Django:更改“AM”和“PM”的文本

时间:2012-05-23 10:35:55

标签: python django parsing

我希望能够在strptime之类的时候使用Python的9:00p,其中p代表PM。

似乎我最接近的赌注是%p开关:

http://docs.python.org/library/time.html#time.strftime

问题是,它只解析pmPM。我希望它接受p

文档说它使用“Locale相当于AM或PM”。我有办法将“语言环境等效”更改为pa吗?

3 个答案:

答案 0 :(得分:3)

不幸的是,Windows中的短时和长时格式仅支持A.M.的tt。或者P.M.,似乎没有办法改变它。

您是否可以预处理字符串并使用.replace('p', 'pm').replace('a', 'am')

答案 1 :(得分:0)

问题在于,当您最好将其视为便利功能时,您希望strptime解析所有内容。更改“locale equivalent”是制作神秘代码并让其他东西(如strftime)中断的好方法。

您最好先将<{1}}替换为字符串中的9:00p ,然后将其传递给9:00pm。您可能希望检查替换的合理性,例如“Thursp”不应该变为“Thurspm”。

答案 2 :(得分:-1)

可以预处理它。您可以更改django核心部分的代码。

最糟糕的情况是,您可以使用子类甚至猴子补丁。如果您决定展示一些代码,我们很乐意指出前进的方向。