Saya menggunakan python3.3 dan saya mengalami kesalahan samar ketika mencoba acar kamus sederhana.
Ini kodenya:
import os
import pickle
from pickle import *
os.chdir('c:/Python26/progfiles/')
def storvars(vdict):
f = open('varstor.txt','w')
pickle.dump(vdict,f,)
f.close()
return
mydict = {'name':'john','gender':'male','age':'45'}
storvars(mydict)
dan saya mendapatkan:
Traceback (most recent call last):
File "C:/Python26/test18.py", line 31, in <module>
storvars(mydict)
File "C:/Python26/test18.py", line 14, in storvars
pickle.dump(vdict,f,)
TypeError: must be str, not bytes
python
python-3.x
pickle
John Rowland
sumber
sumber
pickle.dump()
danpickle.load()
. Kedua tempat, ini disebutkan hanya lewat dekat tengah penjelasan fungsi. Seseorang harus membuat ini lebih jelas.Baru saja mengalami masalah yang sama. Dalam Python 3, mode Biner 'wb', 'rb' harus ditentukan sedangkan dalam Python 2x, mereka tidak diperlukan. Ketika Anda mengikuti tutorial yang didasarkan pada Python 2x, itu sebabnya Anda ada di sini.
sumber