巴别塔日期格式返回2016年为2017年d

2024-04-23 11:35:43 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在尝试显示为指定语言格式化的日期,但我不太惊讶地发现:

babel.dates.format_date(date(2017,1,1), 'MMM Y')

给出期望值,即:

u'Jan 2017'

而:

babel.dates.format_date(date(2017,1,1), 'MMM Y', locale='fr_FR')

给了我:

u'janv. 2016'

为什么是2016年而不是2017年?你知道吗


Tags: 语言formatdatefrlocalejandatesbabel
1条回答
网友
1楼 · 发布于 2024-04-23 11:35:43

这是因为Y给了你一年中的一周。你需要使用yyyy来得到你想要的。你知道吗

https://github.com/python-babel/babel/issues/138

print format_date(date(2017,1,1), 'MMM yyyy')

print format_date(date(2017,1,1), 'MMM yyyy', locale='fr_FR')

Jan 2017
janv. 2017

相关问题 更多 >