728x90
파이썬에서 날짜 형식을 지정하는 함수 strftime을 사용하면 아래와 같이 출력이 됩니다.
print(today.strftime('%Y. %m. %d.'))#실행결과
2019. 03. 06.
print(today.strftime('year: %Y month: %m day : %d'))#실행결과
year: 2019 month: 03 day : 06
하지만 형식에 한글이 들어가면 아래와 같이 에러가 발생합니다.
$ print(today.strftime('%Y년 %m월 %d일'))#실행결과
Traceback (most recent call last):
File "c:\Users\jeakwon\Desktop\workspace_docx\docx\take_in_request_form.py", line 7, in <module>
print(datetime.datetime.now().date().strftime('%Y년 %m월 %d일'))
UnicodeEncodeError: 'locale' codec can't encode character '\ub144' in position 2: encoding error
해결방법으로는
- strftime 인풋 string을 유니코드 인코딩 후 디코딩
‘%Y년 %m월 %d일’.encode(‘unicode-escape’).decode()
- strftime 아웃풋 string 을 인코딩 후 유니코드 디코딩
strftime( ~ ).encode().decode(‘unicode-escape’))
print(
today.strftime(
'%Y년 %m월 %d일'.encode('unicode-escape').decode()
).encode().decode('unicode-escape')
)#실행결과
2019년 03월 06일
'파이썬 > 파이썬 에러' 카테고리의 다른 글
selenium ChromeDriver PermissionError (134) | 2024.01.10 |
---|