본문 바로가기
인터넷/모바일/머신러닝

python : UnicodeDecodeError: 'ascii' codec can't decode byte 0xe2 in position 1: ordinal not in range(128) 해결책.

by blade. 2017. 10. 25.


pickle에서 데이터를 읽어올 때에 UnicodeDecodeError 관련 에러가 떨어지는 경우...

1
2
3
4
5
  File "H:\fixers - 3.4\addressfixer - 3.4\trunk\lib\address\address_generic.py"
, line 382in read_ref_files
    d = pickle.load(open(mshelffile, 'rb'))
UnicodeDecodeError: 'ascii' codec can't decode byte 0xe2 in position 1: ordinal
not in range(128)
cs



python3에서는 아래와 같은 방법으로 해결 가능.


1
2
3
4
5
6
7
with open(datafile, 'rb') as f:
    d = pickle.load(f, encoding='latin1') 
 
또는
 
f = open(datafile, 'rb')
d = pickle.load(f, encoding='latin1')
cs


python2는 안 해봤음.