【发布时间】:2015-03-16 15:15:06
【问题描述】:
在这个问题 - What's the difference between io.open() and os.open() on Python? - 我了解到 Python open() 函数是 io.open() 函数的别名。
我的问题是如何确定一个 Python 函数是否为另一个函数取别名?
我认为 id() 函数会帮助我,但在 open() 和 io.open() 的情况下它返回不同的值:
>>> import io
>>> id(open)
140172515129392
>>> id(io.open)
28340168
我正在使用 Python 2.7.3
【问题讨论】:
-
您要解决的实际问题是什么?
-
您在错误的 Python 版本中测试它,请在 Python 3 中尝试。
-
@NPE 并不总是解决问题。就我而言,这只是学习。更深入地帮助我更好地理解它。
-
@golem:这是有道理的,比较 id 或使用
is运算符是可行的方法。请记住,有很多方法可以分解此检查(例如,简单的包装器 - 例如 lambda 函数 - 将具有不同的id)。
标签: python file alias file-handling