Ааа так, что происходит в том, что вы открываете файл один раз и закрыть его один раз, но и использовать его в два раза. Я взял свою собственную функцию разборки и попытался создать две вещи, и это дало мне ошибку.
это ошибка я получаю при использовании предыдущей функции:
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "<stdin>", line 4, in pickleLoad
File "/opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/pickle.py", line 1378, in load
return Unpickler(file).load()
File "/opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/pickle.py", line 858, in load
dispatch[key](self)
File "/opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/pickle.py", line 880, in load_eof
raise EOFError
EOFError
но когда я редактировал его как таковой, то она работала хорошо:
import cPickle
def unpickle(filename):
open_first = open(filename, "rb")
Dic1 = cPickle.load(open_first)
open_again = open(filename, "rb")
Dic2 = cPickle.load(open_again)
open_first.close()
open_again.close()
return Dic1,Dic2
Но ваша функция возвращает то же самое содержание в двух переменных, так как у нас есть только один аргумент, а именно filename
.., чтобы просто распечатать файл:
def unpickle(filename):
f = open(filename, "rb")
d = cPickle.load(f)
f.close()
return d
вы вызываете его из другой функции? Какая ошибка вы получаете? –
* не работает * есть ** нет ** описание проблемы мы можем вам помочь. Пожалуйста, расскажите нам, что происходит не так. Что случилось, какие сообщения об ошибках вы получили, если они есть, и что вы ожидали вместо этого? –
Он говорит, что недопустимый ключ нагрузки –