UnicodeDecodeError: 'gbk' codec can't decode byte 0xaf in position 63: illegal multibyte sequence
或者
UnicodeDecodeError: 'utf-8' codec can't decode byte 0xb5 in position 20: invalid start byte
一般是在读取文件时,解码汉字或特殊符号出现了问题(Decode)。
这是因为open的默认编码方式是没有指定的,所以运行时编译器用gbk去解析utf-8编码,或者编译器选用utf-8去解析gbk编码
所以只要你指定编码方式就行了:
UTF-8
编码的。encoding
的值,如fp = open('file.txt', 'r', encoding='utf-8')
关于如何指定默认的python文件的编码方式,就不用特意指定:
在开头打上:(都一样)
# -*- coding: utf-8 -*-
# coding=utf-8
# coding: utf-8
查看是什么编码方式
import sys
print(sys.getdefaultencoding())