我见过很少的py脚本在脚本的顶部使用它.在什么情况下应该使用它?
import sys
reload(sys)
sys.setdefaultencoding("utf-8")
Run Code Online (Sandbox Code Playgroud) 我在Ubuntu终端(编码设置为utf-8)中运行此代码段两次,一次使用./test.py
然后使用./test.py >out.txt
:
uni = u"\u001A\u0BC3\u1451\U0001D10C"
print uni
Run Code Online (Sandbox Code Playgroud)
没有重定向它会打印垃圾.通过重定向,我得到了一个UnicodeDecodeError.有人可以解释为什么我只在第二种情况下得到错误,或者甚至更好地详细解释两种情况下幕后发生的情况?