问题描述
import datetime
now = datetime.datetime.now()
print(now.strftime('%Y年%m月%d日'))
报错 UnicodeEncodeError: 'locale' codec can't encode character '\u5e74' in position 2: Illegal byte sequence
解决方案
设置语言环境:locale.setlocale(locale.LC_CTYPE, 'Chinese')
string.format():推荐用这种
转字符串
import locale
import datetime
locale.setlocale(locale.LC_CTYPE, 'Chinese')
now = datetime.datetime.now()
print(now.strftime('%Y年%m月%d日'))
print(now.strftime('%Y{y}%m{m}%d{d}').format(y='年', m='月', d='日'))
print(now.strftime('%Y年%m月%d日'.encode('unicode-escape').decode()).encode().decode('unicode-escape'))