1,出现的问题及分析
在Sublime Text3中用ctrl+B运行python程序时,如果要打印输出英文时正常运行,而输出中文时则会报错,具体情况如下:
Traceback (most recent call last):
File "/Users/jishuyiliu/Desktop/Python/2.py", line 2, in
print(a)
UnicodeEncodeError: 'ascii' codec can't encode characters in position 0-1: ordinal not in range(128)
2,解决办法
修改Sublime Text3中的设置
Preferences > Browse Packages > User > Python3.sublime-build
如果不存在这个文件,可以通过新建编译系统保存为这个文件
加上一句 env ,文件内容如下:
{
"cmd": ["/usr/local/bin/python3", "-u", "$file"],
"file_regex": "^[ ]*File "(...*?)", line ([0-9]*)",
"selector": "source.python",
"env": {"LANG": "en_US.UTF-8"}
}
到这里, Python3已经可以在Sublime正常输出中文了!
这里要说下,这个问题并不是sublime的编码问题,而是在python3环境下的默认解码格式,由于默认的是ascii,所以没有办法直接解码中文,通过这个办法就搞定了,百度上那批扯淡的没什么卵用。
转载地址:http://www.jishuyiliu.com/archives/264.html