UnicodeEncodeError: ‘ascii’ codec can’t encode/decode characters in position xxx: ordinal not in range(128)
在写Python文件时遇到保存的内容里面含有中文就出现了如下报错:
UnicodeEncodeError: 'ascii' codec can't encode characters in position 16848-16853: ordinal not in range(128)
不管是Python还是其他语言,都会存在unicode
、utf-8
和ascii
方面的编码不兼容问题,Python有一个简单粗暴的解决方案是在源文件头前加上如下代码:
import sys
reload(sys)
sys.setdefaultencoding('utf-8')
如果仅仅是需要打印中文字符,不涉及文件读写编码转换相关操作,可以仅仅简单在源文件头加上下面的这句代码就好了:
#coding=utf-8