我犯了如下错误:
>>> list = ['a', 'b', 'c']
但是现在我想使用内置函数list()。如您所见,listnamelist和内置函数之间存在命名冲突list()。
list()
list
如何list在不重新启动Python Shell的情况下将变量作为内置函数使用?
使用__builtins__.list或__builtins__['__list__'](取决于上下文),或list再次简单地删除(del list)。
__builtins__.list
__builtins__['__list__']
del list
无需进口:
>>> __builtins__.list <type 'list'>
存在__builtins__是CPython实现细节;在__main__模块中,它是一个模块,在其他任何地方,它都是模块__dict__字典。Jython,IronPython和PyPy可能选择完全不提供此功能。使用适用于那些平台的__builtin__模块,或适用于Python 3兼容实现的builtins模块:
__builtins__
__main__
__dict__
__builtin__
builtins
>>> import __builtin__ >>> __builtin__.list <type 'list'>