Вот проблемный кусок кода:
#!/usr/bin/python
import cPickle, struct
l
D={'user': 'password'}
im_dump=cPickle.dumps(D, -1)
length_dump=len(im_dump)
#Пишем в файл
data=str(struct.pack('>i4sh',length_dump,im_dump,8))
pass_file=open('c:\\Python26\\passwd.txt','wb')
pass_file.write(data)
pass_file.close()
print data
#Читаем из файла
pass_file=open('c:\\Python26\\passwd.txt','rb')
test_dump=pass_file.read()
print test_dump
data=str(struct.unpack('>i4sh',test_dump))
D=dict(cPickle.loads(data))
pass_file.close()
print data
Ђ}qUuserqUpasswordqs.
Traceback (most recent call last):
File "C:\Python26\mystruct.py", line 21, in <module>
D=dict(cPickle.loads(data))
UnpicklingError: unpickling stack underflow
Что я тут делаю не так, похожий пример взят из книги.
Windows XP, Python 2.6.4