解析时间字符串,Python

时间:2017-02-16 20:34:53

标签: python locale strptime

我很难用datetime.strptime解析日期/时间字符串:

date = "30. Dez 2016 19:34"
format = "%d. %b %Y %H:%M"
dt = datetime.strptime(date, format)
dt

引发值错误:

ValueError: time data '30. Dez 2016 19:34' does not match format '%d. %b %Y %H:%M' 

该字符串使用德国惯例,即12月的“Dez”。我使用locale.getlocale()检查了我的区域设置,这似乎没问题:('de_DE', 'UTF-8')。用英语“Dec”替换“Dez”可以正常工作。我还检查了module documentation,它告诉我它应该开箱即用:

  

由于格式取决于当前的语言环境,因此在对输出值进行假设时应小心。

修改

locale.setlocale(locale.LC_TIME, 'de_DE')

做到了。这仍然让我有点不满意,因为我的地方似乎首先适合。如果有人可以更轻松......

0 个答案:

没有答案