728x90
csv 를 가져오려고 할 때 값앞에 \ufeff이 붙는 현상이 발생할 때 해결법이다.
필자의 소스는 다음과 같았다.
import csv
f = open('pincode.csv','r', encoding='UTF-8')
reader = list(csv.reader(f))
f.close()
print(reader[0])
결과 값은 523-1423을 기대했으나 다음과 같이 나왔다.
C:\Users\devgu\Desktop>python test.py
['\ufeff523-1423']
앞에 \ufeff를 제거하는 방법은 생각보다 간단하다.
encoding 방식을 'UTF-8'에서 'UTF-8-sig'로 바꿔주면 된다.
즉 다음과 같이 바꿔주면 된다.
import csv
f = open('pincode.csv','r', encoding='UTF-8-sig')
reader = list(csv.reader(f))
f.close()
print(reader[0])
결과 값은 정상적으로 제거 된 것을 확인할 수 있다.
728x90
'ETC > 에러 모음' 카테고리의 다른 글
TypeError: an integer is required (got type str) (0) | 2020.08.12 |
---|---|
python txt read 파일 읽기 에러 'cp949 codec' 해결법 (0) | 2020.08.12 |
PYTHON 에서 "UnicodeDecodeError: 'cp949' codec can't decode byte 0xe2 in position 6987: illegal multibyte sequence" 오류 날때 해결법 (0) | 2020.07.28 |
ImportError: No module named googleapiclient 해결방법 (0) | 2020.07.23 |
msvcp140.dll or msvcp140_1.dll 오류 해결법 (2) | 2020.07.08 |