Python
[Python] 파이썬 날짜 표현 한글 에러
jolocal
2024. 11. 14. 13:28
728x90
파이썬에서 오늘 날짜를 가져오는 법
from datetime import datetime as dt
today = dt.now().date()
print(today)
-----------------------------------------
# 실행결과
2024-11-14
-----------------------------------------
형식을 지정해주는 법
- 기호
today = dt.now().strftime('%Y. %m. %d.')
print(today)
-----------------------------------------
# 실행결과
2024. 11. 14
-----------------------------------------
- 영어
today = dt.now().strftime('year: %Y month: %m day: %d')
print(today)
-----------------------------------------
# 실행결과
year: 2024 month: 11 day: 14
-----------------------------------------
- 한글
today = dt.now().strftime('%Y년 %m월 %d일')
print(today)
-----------------------------------------
# 실행결과
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
-----------------------------------------
에러가 뜬다.
해결방법
1. `strftime` 인풋 String을 유니코드 인코딩 후 디코딩
2. `strftime` 아웃풋 String을 인코딩 후 유니코드 디코딩
today = dt.now().strftime('%Y년 %d월 %m일.encode('unicode-escape').decode)
.encode().decode('unicode-escape')
-----------------------------------------
# 실행결과
2024년 11월 14일
-----------------------------------------
728x90