UnicodeDecodeError: кодек «ascii» не может декодировать байт 0xf2 в позиции 6: порядковый номер не в диапазоне (128) - PullRequest
0 голосов
/ 14 марта 2019

Я пытаюсь работать с файлом .pkl.

Вот мой код

import pickle
with open('C:\\Users\\Utilizador\\Desktop\\teste\\teste.pkl', 'rb') as f:
    data = pickle.load(f)

Это дает мне следующую ошибку:

  File "C:/Users/Utilizador/Desktop/teste/untitled0.py", line 4, in <module>
    data = pickle.load(f)    
UnicodeDecodeError: 'ascii' codec can't decode byte 0xf2 in position 6: ordinal not in range(128)

Заранее спасибо

1 Ответ

0 голосов
/ 17 июня 2019

Для меня использование python2 вместо python3 решило проблему.Я попытался загрузить файл pkl из общедоступного набора данных исследований .

Ошибка в питоне 3:

fbobee@server:~/WESAD/S10$ python3
Python 3.5.2 (default, Nov 12 2018, 13:43:14) 
[GCC 5.4.0 20160609] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import pickle
>>> with open('S10.pkl', 'rb') as f:
...   data = pickle.load(f)
... 
Traceback (most recent call last):
  File "<stdin>", line 2, in <module>
UnicodeDecodeError: 'ascii' codec can't decode byte 0xf2 in position 6: ordinal not in range(128)

Успех в питоне 2:

fbobee@server:~/WESAD/S10$ python
Python 2.7.12 (default, Nov 12 2018, 14:36:49) 
[GCC 5.4.0 20160609] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import pickle
>>> with open('S10.pkl', 'rb') as f:
...   data = pickle.load(f)
... 
>>> data.keys()
['signal', 'subject', 'label']

Я не нашел ничего экзотического в данных, они содержат несколько строк (только английские буквы) и цифры. Документация гласит , что маринад является обратно совместимым.Возможно, он имеет связь с новой текстовой моделью python 3 .

...