Python读取txt出现“‘gbk’ codec can't encode ...”

f = open(filepath, encoding = 'utf-8') # 使用utf8编码读取
print(f.read()) # 打印内容

虽然可以用 'utf-8' 读取,但并不能识别,对其操作会出现标题中的错误。
在命令行查看,

f.read() # 查看字符串

发现开头有 '\ufeff' 的字符,这是 'utf-8-bom' 的编码。

解决方法

使用utf-8-sig解码即可成功读取:

f = open(filepath, encoding = 'utf-8-sig') # 使用utf8编码读取

你可能感兴趣的:(Python读取txt出现“‘gbk’ codec can't encode ...”)