bga*_*ath 22 python python-2.7
当我在探索StackOverflow问题的解决方案,Python使用用户定义的字符串类时,我遇到了这种奇怪的python行为.
def overriden_print(x):
print "Overriden in the past!"
from __future__ import print_function
print = overriden_print
print("Hello World!")
Run Code Online (Sandbox Code Playgroud)
输出:
Overriden过去!
现在,我怎样才能print在python解释器中找回原来的行为?
Mar*_*ers 42
只需删除覆盖:
del print
Run Code Online (Sandbox Code Playgroud)
这将从globals()字典中删除名称,让搜索回退到内置插件.
您也可以通过__builtin__模块直接引用内置功能:
import __builtin__
__builtin__.print('Printing with the original built-in')
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
6343 次 |
| 最近记录: |