После того, как вы просматриваете необработанный файл в Sublime, похоже, что файл был неправильно обработан. Приведенный выше код отлично работает с другой версией этого файла.
аюсь открыть файл Pickle в Python 3 с помощью кода, который работал в Python 2, но теперь выдает ошибку. Вот код:
with open(file, 'r') as f:
d = pickle.load(f)
TypeError Traceback (most recent call last)
<ipython-input-25-38f711abef06> in <module>()
1 with open(file, 'r') as f:
----> 2 d = pickle.load(f)
TypeError: a bytes-like object is required, not 'str'
Я видел на других ответах SO, что у людей была эта проблема при использованииopen(file ,'rb')
и переключение наopen(file ,'r')
починил это. Если это поможет, я попробовалopen(file ,'rb')
просто поэкспериментировал и получил следующую ошибку:
UnpicklingError Traceback (most recent call last)
<ipython-input-26-b77842748a06> in <module>()
1 with open(file, 'rb') as f:
----> 2 d = pickle.load(f)
UnpicklingError: invalid load key, '\x0a'.
Когда я открываю файл сf = open(file, 'r')
и входf
Я получил:
<_io.TextIOWrapper name='D:/LargeDataSets/Enron/final_project_dataset.pkl' mode='r' encoding='cp1252'>
И я тоже попробовал:
with open(file, 'rb') as f:
d = pickle.load(f, encoding='cp1252')
и получил ту же ошибку, что и при использовании 'rb':
UnpicklingError Traceback (most recent call last)
<ipython-input-27-959b1b0496d0> in <module>()
1 with open(file, 'rb') as f:
----> 2 d = pickle.load(f, encoding='cp1252')
UnpicklingError: invalid load key, '\x0a'.