文件的写入问题
A={'a':1,'b':2}B=open('zidan.txt','w')
import pickle
pickle.dump(A,B)
Traceback (most recent call last):
File "<pyshell#4>", line 1, in <module>
pickle.dump(A,B)
TypeError: write() argument must be str, not bytes
产生了报错,什么原因啊?
A={'a':1,'b':2}
B=open('zidan.txt','wb')
import pickle
pickle.dump(A,B) 这个函数要求读写文件以二进制读写 B=open('zidan.txt','w')
改为
B=open('zidan.txt','wb') 不能懒 发表于 2021-4-2 20:33
A={'a':1,'b':2}
B=open('zidan.txt','wb')
import pickle
pickle.dump(A,B)
B.close()
B=open('data.txt')
M=pickle.load(B)
Traceback (most recent call last):
File "<pyshell#16>", line 1, in <module>
N=pickle.load(M)
UnicodeDecodeError: 'gbk' codec can't decode byte 0x80 in position 0: illegal multibyte sequence
又开始报错了,这又是怎么回事啊? jackz007 发表于 2021-4-2 20:37
改为
A={'a':1,'b':2}
B=open('zidan.txt','wb')
import pickle
pickle.dump(A,B)
B.close()
B=open('data.txt')
M=pickle.load(B)
Traceback (most recent call last):
File "<pyshell#16>", line 1, in <module>
N=pickle.load(M)
UnicodeDecodeError: 'gbk' codec can't decode byte 0x80 in position 0: illegal multibyte sequence
又开始报错了,这又是怎么回事啊? 江湖散人 发表于 2021-4-2 21:06
A={'a':1,'b':2}
B=open('zidan.txt','wb')
import pickle
B=open('data.txt')
改为
B=open('data.txt' , 'rb') jackz007 发表于 2021-4-2 21:25
改为
我改了,还是不行{:5_94:} 江湖散人 发表于 2021-4-2 22:50
我改了,还是不行
是吗?
看看我这里的
>>> import pickle
>>> A={'a':1,'b':2}
>>> B=open('zidan.txt','wb')
>>> pickle.dump(A,B)
>>> B.close()
>>> B=open('zidan.txt' , 'rb')
>>> M=pickle.load(B)
>>> M
{'a': 1, 'b': 2}
>>> jackz007 发表于 2021-4-2 22:59
是吗?
看看我这里的
我为什么执行的时候就出题了呢,奇怪啊。
谢谢啊
页:
[1]