UnicodeDecodeError: ‘gbk‘ codec can‘t decode byte 0xac in position 18: illegal multibyte sequence

诸神缄默不语-个人CSDN博文目录

报错信息:UnicodeDecodeError: ‘gbk’ codec can’t decode byte 0xac in position 18: illegal multibyte sequence

出现原因:在Windows电脑上用Python 3的open()命令直接打开文件,文件的编码信息是UTF-8,但默认打开方式是GBK。
我是在Linux系统上创建的文件,而Linux上默认的打开编码方式就是UTF-8,所以就出现了这个问题。

解决方案:在代码中指定打开方式,例如:open(file_name,encoding="utf-8")
在VSCode中可以直接打开文本文件,VSCode会自动推测文件的编码方式,显示在右下角,可以以此作为参考来选择文件打开时的编码方式。

参考资料:

  1. python - UnicodeDecodeError:‘gbk’ codec can’t decode byte 0x80 in position 0 illegal multibyte sequence - Stack Overflow
  2. python - UnicodeDecodeError: ‘gbk’ codec can’t decode byte when read json contains chinese - Stack Overflow
  3. Python中读取txt文本出现“ ‘gbk’ codec can’t decode byte 0xbf in position 2: illegal multibyte sequence”的解决办法-CSDN博客

猜你喜欢

转载自blog.csdn.net/PolarisRisingWar/article/details/142763410