python报错,可以正常print,但file.write报错:
UnicodeEncodeError: ‘ascii’ codec can’t encode character u’\u5b66’ in position 0: ordinal not in range(128)
原因:python2.7是基于ascii去处理字符流,当字符流不属于ascii范围内,就会抛出异常(ordinal not in range(128)
解决办法:在脚本的开始加入以下代码即可
// An highlighted block
import sys
reload(sys)
sys.setdefaultencoding('utf-8')
备注,我才发现虚拟环境里的python=3.6不知不觉变成了python=2.7了。真是莫名其妙,我就说怎么突然会报这种错。