美文网首页
Python UnicodeEncodeError: 'asci

Python UnicodeEncodeError: 'asci

作者: Yohann丶blog | 来源:发表于2020-06-22 10:43 被阅读0次
WechatIMG9.jpeg

环境

  • ubuntu 16.04
  • python 3.5.2

代码

if __name__ == '__main__':
    text = "阳光下的小海儿"
    print(text)

错误

$ python simple.py
Traceback (most recent call last):
  File "simple.py", line 3, in <module>
    print(text)
UnicodeEncodeError: 'ascii' codec can't encode characters in position 0-6: ordinal not in range(128)

在执行 python 文件的时候,报错:UnicodeEncodeError: 'ascii' codec can't encode characters,原因是中文字符编码的问题。

解决方案一

$ PYTHONIOENCODING=utf-8 python simple.py
阳光下的小海儿

在所要执行的 python 文件前加上PYTHONIOENCODING=utf-8,如上可以正常输出。

解决方案二

  • 更改 simple.py,内容如下:
import sys

import codecs

if __name__ == '__main__':
    sys.stdout = codecs.getwriter("utf-8")(sys.stdout.detach())
    text = "阳光下的小海儿"
    print(text)
  • 执行
$ python simple.py
阳光下的小海儿

相关文章

网友评论

      本文标题:Python UnicodeEncodeError: 'asci

      本文链接:https://www.haomeiwen.com/subject/xzqxfktx.html