2024-05-08 16:58:17 发布
网友
我想让Python自动给出本地化月份的名称。
我使用这段代码:datetime.datetime.strptime(j, "%m").strftime("%B"),其中j是月份号。
datetime.datetime.strptime(j, "%m").strftime("%B")
我的问题是,它一直给我“一月”,而我期待“Janvier”(法语地区)。
我试着对locale进行一些调整,我发现使它工作的唯一方法是在脚本开始时调用locale.set_locale(locale.LC_ALL, "")。
locale.set_locale(locale.LC_ALL, "")
这是个好办法吗?或者有什么问题和更好的解决方案吗?
谢谢
如果不想影响datetime函数,请尝试以下操作:
def getLocalizedMonth(j): locale.set_locale(locale.LC_ALL, "") datetime.datetime.strptime(j, "%m").strftime("%B") locale.setlocale(locale.getdefaultlocale())
是的,我认为使用locale.setlocale是最好的解决方案!
如果您的语言环境设置为操作系统级别
locale.set_locale(locale.LC_ALL, '') print locale.nl_langinfo(locale.LC_MON1) "janvier"
或者可以在python级别设置它:
locale.set_locale(locale.LC_ALL, 'fr_FR') print locale.nl_langinfo(locale.LC_MON1) "janvier"
如果不想影响datetime函数,请尝试以下操作:
是的,我认为使用locale.setlocale是最好的解决方案!
如果您的语言环境设置为操作系统级别
或者可以在python级别设置它:
相关问题 更多 >
编程相关推荐