小编典典

对python的time.strftime()使用Unicode格式

python

我正在尝试time.strftime()使用Unicode格式的字符串调用Python的函数:

u'%d\u200f/%m\u200f/%Y %H:%M:%S'

\u200f是“从左向右标记”(RLM)。)

但是,我收到一个例外,即RLM字符无法编码为ascii:

UnicodeEncodeError:’ascii’编解码器无法在位置2编码字符u’\ u200f’:序数不在范围内(128)

我曾尝试寻找一种替代方法,但找不到合理的替代方法。有没有此功能的替代方法,或使其与Unicode字符一起使用的方法?


阅读 220

收藏
2021-01-20

共1个答案

小编典典

许多标准库函数仍然不按应有的方式支持Unicode。您可以使用以下解决方法:

import time
my_format = u'%d\u200f/%m\u200f/%Y %H:%M:%S'
my_time   = time.localtime()
time.strftime(my_format.encode('utf-8'), my_time).decode('utf-8')
2021-01-20