报错如:UnicodeDecodeError: ‘gbk’ codec can’t decode byte 0xab in position 11126: illegal multibyte sequence
将‘gbk’换成‘utf-8’也适用。
在代码中更改编码格式
- 首先在打开文本的时候,设置其编码格式,如:open(‘1.txt’,encoding=’gbk’);
- 若(1)不能解决,可能是文本中出现的一些特殊符号超出了gbk的编码范围,可以选择编码范围更广的‘gb18030’,如:open(‘1.txt’,encoding=’gb18030’);
- 若(2)仍不能解决,说明文中出现了连‘gb18030’也无法编码的字符,可以使用‘ignore’属性进行忽略,如:open(‘1.txt’,encoding=’gb18030’,errors=‘ignore’);
- 还有一种常见解决方法为open(‘1.txt’).read().decode(‘gb18030’,’ignore’)
- 将open函数的打开权限改为以二进制方式打开,可以避免编码格式不同造成的报错。
处理新生成的txt
不要选择在powershell中直接生成的方式,通过记事本/VS生成均可
————————————————
原文链接:https://blog.csdn.net/shijing_0214/article/details/51971734