본문 바로가기

프로그래밍/Python

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

반응형

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

파이썬 초보들이 겪을 수 있는 문제이다. 이런 에러메시지를 만났다면,

코드 중에 `"C:\Users\xxxxx\...."` 이런 식의 파일경로를 찾아서, 그 경로의 `\`를 모두 `\\`로 바꾸어 실행하면 문제가 해결될 것이다.

아래는 idle에서 에러를 발생시켜 본 것

>>> p = 'C:\Users\dwyoo\sample.txt'
SyntaxError: (unicode error) 'unicodeescape' codec can't decode bytes 
in position 2-3: truncated \UXXXXXXXX escape
>>> 

`\`를 `\\`로 바꾸어 실행해 본 것

>>> p = 'C:\\Users\\dwyoo\\sample.txt'
>>> p
'C:\\Users\\dwyoo\\sample.txt'
>>> with open(p, 'r', encoding='utf-8') as f:
	txt = f.read()

	
>>> print(txt)
abc

이 에러가 왜 발생하는 지에 대해서는 이스케이프문자에 대해서 검색하여 공부해 보고 이해하면 된다. 나중에 시간나면 본 포스팅을 보강하겠다.

728x90