UnicodeEncodeError: ‘ascii‘ codec can‘t encode characters in position ..

When python traverses and reads txt, you may encounter an error

UnicodeEncodeError: 'ascii' codec can't encode characters in position ..

The original code:

 testFile = '/Users/magicliu/work/1_self/xinyue-mall-fq/template/index/index.html'
 f3 = io.open(testFile, 'r', encoding='UTF-8')
 for s in f3.readlines():
     print(s) # 报错

Solution

import sys
reload(sys)
sys.setdefaultencoding("utf-8")  # 设置环境为utf-8

 testFile = '/Users/magicliu/work/1_self/xinyue-mall-fq/template/index/index.html'
 f3 = io.open(testFile, 'r', encoding='UTF-8')
 for s in f3.readlines():
     print(s.encode('utf-8')) # 字符串转utf-8即可

Guess you like

Origin blog.csdn.net/u010775335/article/details/128241550