出现 Unicode解码时的错误 怎么处理
import easygui as g
f = open ("file.txt")
g.textbox("文件【file.txt】的内容如下:",text = f.read())
import easygui as g
# 添加 encoding 参数,使用正确编码打开文件
# 不一定是 'utf-8',主要看你的 file.txt 文件是以什么编码保存的
f = open("file.txt", encoding='utf-8')
g.textbox("文件【file.txt】的内容如下:", text=f.read())
需要使用chardet模块来判断到底是什么编码 特别是爬虫得到的文本 根本就是混合的 不止一种编码 gbk和gb2312也是略有区别 本帖最后由 聂嘉辉 于 2020-10-25 10:46 编辑
试试:
with open('file.txt', 'r', encode = 'utf8') as f:
g.textbox("文件【file.txt】的内容如下:",text = f.read())
记得最佳答案 hrp 发表于 2020-10-25 10:08
我在开头已经用了# -*- coding:utf-8 -*-这个,但是with open('1.txt') as f:这样就会报错Unicode解码错误。如果是with open('1.txt',encoding='utf-8') as f:这样就可以运行。不知道为什么? 刘定坚 发表于 2021-5-4 22:46
我在开头已经用了# -*- coding:utf-8 -*-这个,但是这样就会报错Unicode解码错误。如果是这样就可以运行 ...
开头用# -*- coding:utf-8 -*-只是告诉python解释器要用utf-8来解码你的源代码文件而已,跟open函数用什么编码打开文件无关。 hrp 发表于 2021-5-4 23:04
开头用# -*- coding:utf-8 -*-只是告诉python解释器要用utf-8来解码你的源代码文件而已,跟open函数用什 ...
明白了,谢谢{:5_109:}
页:
[1]