Python 日期时间本地化

13 投票
4 回答
17037 浏览
提问于 2025-04-15 18:11

我需要做些什么(加载哪些模块,调用哪些本地化方法等等),这样当我调用:

datetime.date(2009,1,16).strftime("%A %Y-%b-%d")

时,不是得到:

Out[20]: 'Friday 2009-Jan-16'

而是得到西班牙语/法语/德语/...的输出

Out[20]: 'Viernes 2009-Ene-16'

而不需要更改我整个操作系统的语言设置(也就是说,只用Python的调用动态设置语言,并且让这些改变只在我的应用程序中生效)

谢谢。

4 个回答

4

另外,可以看看这个babel项目。

6

在Ubuntu系统上,

$> sudo locale-gen es_ES.UTF-8
$> sudo dpkg-reconfigure locales
$> python
>>> import locale
>>> locale.setlocale(locale.LC_TIME, 'es_ES.UTF-8')
8

locale.setlocale() 是一个用来设置程序语言和地区设置的函数。

撰写回答