如何转换字符串日期11:01 PM - 2009年8月11日dateTime对象 - Python 3
问题描述:
我试图将字符串日期“11:01 PM - 2009年8月11日”转换为python中的datetime
对象。我的代码是:如何转换字符串日期11:01 PM - 2009年8月11日dateTime对象 - Python 3
from datetime import datetime
datetime.strptime('11:01 PM - 11 Aug 2009', '%I:%M %p - %d %B %Y')
但我得到一个错误:time data '11:01 PM - 11 Aug 2009' does not match format '%I:%M %p - %d %B %Y'
不知道我已经错过了。
答
问题是这个月是简短的形式,所以九月而不是九月。必须将其更改为%b
而不是%B
。
更新后的代码是:
from datetime import datetime
datetime.strptime('11:01 PM - 11 Aug 2009', '%I:%M %p - %d %b %Y')
答
使用以下:
datetime.strptime('11:01 PM - 11 Aug 2009', '%I:%M %p - %d %b %Y')
%B月份为Locale的缩写名称。 一月,二月,...,十二月(en_US); 一月,二月,...,费尔南德斯(de_DE这个)
参考: https://docs.python.org/3.5/library/datetime.html#strftime-and-strptime-behavior