python 读取文件问题
今天刚学 python打开文件 遇到了一个问题 首先 python正常打开了 指定文件但是 使用 f.read() 是 会报错如下:
UnicodeDecodeError: 'gbk' codec can't decode byte 0xaf in position 8: illegal multibyte sequence
求解决 当时的代码
f = open('F:\\onpython.txt')
f.read() 小小小小xx 发表于 2020-6-26 16:18
当时的代码
f = open('F:\\onpython.txt')
f.read()
编码问题,试试改成 utf-8 编码:
f = open('F:\\onpython.txt',encoding='utf-8')
这是因为,你存文件用的uft-8格式,而打开的时候用的GBK编码,编码不一致导致乱码了。
加这么一句就好了。
f = open('F:\\onpython.txt',encoding='utf-8') 还是不行啊 代码:
f = open('f:\\onpython.txt', 'w', encoding='utf-8')
print(f)
f.read()
f.write('123')
f.close()
我注释 只保留前两行 可以正常运行 一到第三行就报错
这次是io.UnsupportedOperation: not readable
小小小小xx 发表于 2020-6-26 16:32
还是不行啊 代码:
f = open('f:\\onpython.txt', 'w', encoding='utf-8')
print(f)
1,请回复别人,不然别人看不见。
2,得用'w+'模式啊,w是只写模式,不可以读
3,用'w'模式会清空文件内容,所以你的read没有用。 qiuyouzhi 发表于 2020-6-26 16:48
1,请回复别人,不然别人看不见。
2,得用'w+'模式啊,w是只写模式,不可以读
3,用'w'模式会清空文件 ...
okok可以了 qiuyouzhi 发表于 2020-6-26 16:48
1,请回复别人,不然别人看不见。
2,得用'w+'模式啊,w是只写模式,不可以读
3,用'w'模式会清空文件 ...
但是
我的代码:
f = open('f:\\onpython.txt', 'w+', encoding='utf-8')
f.read()
f.write('哦 12315465123')
f.read()
print(f.read())
f.close()
控制台 输出的是空白的 小小小小xx 发表于 2020-6-26 22:25
但是
我的代码:
f = open('f:\\onpython.txt', 'w+', encoding='utf-8')
f.write后加一个f.seek(0)
因为此时文件的指针在文件末
读出来是空 小小小小xx 发表于 2020-6-26 22:25
但是
我的代码:
f = open('f:\\onpython.txt', 'w+', encoding='utf-8')
f = open('f:\\onpython.txt', 'w+', encoding='utf-8')
f.read()
f.write('哦 12315465123')
f.read()
f.seek(0, 0)
print(f.read())
f.close() qiuyouzhi 发表于 2020-6-27 07:25
我复制的代码
还是 空白啊{:5_100:} 小小小小xx 发表于 2020-6-27 09:37
我复制的代码
还是 空白啊
不可能啊
我这都有内容了 qiuyouzhi 发表于 2020-6-27 09:42
不可能啊
我这都有内容了
啊 我的错 我没运行这个文件 ....好像直接运行的控制台
页:
[1]