sublime编译python脚本出错了怎么办

Python (208) 2023-04-18 10:37:02

原因分析:

(推荐教程:Python入门教程)

unicode中文是没有办法在sublime Text的console中输出的。

解决方法:

设置python默认字节流编/解码器按照utf8解码方式,把字节流编/解码为unicode。

在脚本中加入下面的代码即可:

importsys
reload(sys)
sys.setdefaultencoding("utf8")

作用:

在将字节流使用str()方法转换为str对象时,会调用默认的encode函数,如果没有上述系统的默认编码设置,则自动使用'ascii' codecs进行编码,对于非ascii编码的数据,比如utf8字节流会产生错误解码提示:

UnicodeEncodeError:'ascii'codeccan'tencodecharactersinposition0-5:ordinalnotinrange(128)

在utf8编码文件中写入汉字字符, 比如 s = '中文'时, 如果没有上述设置,运行程序会在初始s对象的值,报告错误解码提示:

UnicodeDecodeError:'ascii'codeccan'tdecodebyte0xe4inposition0:ordinalnotinrange(128)
THE END

发表回复