在使用python 2.7编程时,在读取一个文件中的内容时出现了: UnicodeDecodeError: 'ascii' codec can't decode byte 0xd0 in position 413: ordinal not in range(128) 报错信息,刚开始时不知道怎么处理,通过查找资料和增加打印的方式,发现文件中的内容有中文,中文不是utf-8编码。因此需要转换为utf-8编码。
解决的方式是: 在打开文件时指定utf-8编码:
file = open(test_file_name, "r")
修改为下面的即可:
file = open(test_file_name, "r", encoding='utf-8')
或者参考文章 : How to fix: "UnicodeDecodeError: 'ascii' codec can't decode byte"
在Python2.7中遇到UnicodeDecodeError是因为尝试用ASCII编码解码包含非ASCII字节的文件。解决方案是在打开文件时指定UTF-8编码,如`open(file_name,r,encoding=utf-8)`,这样能正确处理包含中文等多语言内容的文件。
1058

被折叠的 条评论
为什么被折叠?



