当我在探索StackOverflow问题的解决方案Python Use User Defined String Class时,我遇到了这种奇怪的python行为。
def overriden_print(x):
print "Overriden in the past!"
from __future__ import print_function
print = overriden_print
print("Hello World!")
输出:
过去的Overriden!
现在,我怎样才能在python解释器中找回原来的print
行为?
答案 0 :(得分:40)
只需删除覆盖:
del print
这将删除globals()
字典中的名称,让搜索回退到内置插件。
您也可以通过__builtin__
module直接引用内置内容:
import __builtin__
__builtin__.print('Printing with the original built-in')