wujiale 发表于 2020-11-29 14:38:37

关于文件的打开和关闭


使用read会出现这个错误

qwe = open("F:\\123.txt","a")
qwe.read()
Traceback (most recent call last):
File "<pyshell#4>", line 1, in <module>
    qwe.read()
io.UnsupportedOperation: not readable





txt表格中的内容本来是我随便输的中文字
等 “close()”以后就会变成以下乱码
从Python中用 “write” 添加的最后三个字倒是显示正常

姝︿匠涔愶細姘旈浘鍓傚摝
闄堟湀锛氬摜鏈姙娉?
鍚撮懌娑涳細鍘绘薄绮夊湪
渚憺寮猴細濂芥

冬雪雪冬 发表于 2020-11-29 14:45:56

a模式是追加写入,不能read

逃兵 发表于 2020-11-29 14:54:03

本帖最后由 逃兵 于 2020-11-29 15:23 编辑

只读的话试试
qwe = open("F:\\123.txt")
qwe.read()
或者
qwe = open("F:\\123.txt","r")
qwe.read()
乱码试试
qwe = open("F:\\123.txt","r",encoding="utf-8")
qwe.read()

wujiale 发表于 2020-11-29 15:19:42

逃兵 发表于 2020-11-29 14:54
只读的话试试

或者



Traceback (most recent call last):
File "<pyshell#68>", line 1, in <module>
    q.read()
UnicodeDecodeError: 'gbk' codec can't decode byte 0x90 in position 19: illegal multibyte sequence


出现这个是什么情况,我直接打开往txt文件中输入了几个中文字 再打开就这样了

逃兵 发表于 2020-11-29 15:22:01

本帖最后由 逃兵 于 2020-11-29 15:23 编辑

wujiale 发表于 2020-11-29 15:19
Traceback (most recent call last):
File "", line 1, in
    q.read()


这个就是编码的问题,试试我最下面的那个代码
qwe = open("F:\\123.txt","r",encoding="utf-8")
qwe.read()

wujiale 发表于 2020-11-29 15:31:24

逃兵 发表于 2020-11-29 15:22
这个就是编码的问题,试试我最下面的那个代码

谢谢大哥{:10_297:}

wyj19851203 发表于 2021-7-2 17:51:00

逃兵 发表于 2020-11-29 15:22
这个就是编码的问题,试试我最下面的那个代码

谢谢,我也是这样的问题,看小甲鱼的视频他的也没有这么写,这么就好使?

逃兵 发表于 2021-7-2 18:21:22

wyj19851203 发表于 2021-7-2 17:51
谢谢,我也是这样的问题,看小甲鱼的视频他的也没有这么写,这么就好使?

这涉及到文件的编码格式,python默认为'gbk',中文很多是用'utf-8',如果一个解码失败,可以尝试一下用另外一个
页: [1]
查看完整版本: 关于文件的打开和关闭