显式访问Python内置作用域

11 投票
2 回答
2029 浏览
提问于 2025-04-15 12:02

如何在Python中明确访问内置作用域中的名称?

我遇到这种情况是在一个模块里,假设叫做foo,这个模块里有一个叫open的函数。在另一个模块中,可以通过foo.open来访问这个函数,这样是没问题的。但是在foo模块内部,open这个函数会遮住Python内置的open函数。那我该如何明确访问内置的open函数呢?

我知道遮住任何内置名称可能不是个好主意,但我还是想知道有没有办法明确访问内置作用域。

2 个回答

-2

这就像是

__builtins__.open()
12

使用 __builtin__

def open():
    pass

import __builtin__

print open
print __builtin__.open

... 会给你 ...

<function open at 0x011E8670>
<built-in function open>

撰写回答