IT/python

[python3] pathlib 으로 encoding 지정해서 파일 읽기

심량 2023. 2. 16. 11:43

기록용으로 남깁니다.

 

엑셀에서 csv 로 변환한 파일을 읽으려고 하니 오류가 생겼습니다.

SyntaxError: (unicode error) 'unicodeescape' codec can't decode bytes in position 2-3: truncated \UXXXXXXXX escape

 

encoding 을 지정하니 정상 동작합니다.

f = open("kk.csv", "r", encoding="utf-8")

 

그냥 open 말고 pathlib 을 사용해서도 읽고 싶었습니다.

data = Path("kk.csv").read_text(encoding="utf-8")

 

디저트로 윈도우 파일 경로를 그대로 붙여넣었더니 오류가 발생해서 간단히 해결했습니다.

"d:\doc\kk.csv" 로 쓰면 \가 escape 문자로 해석 되서 문제가 발생하니 이를 무시하라고 지정하면 됩니다.

Path(r"d:\doc\kk.csv")