【发布时间】:2016-05-04 00:28:03
【问题描述】:
我正在使用 python 3.5。
我有一个格式为mm/dd/yyyy H:MM:SS AM/PM 的字符串,我想将它作为python 日期时间对象。
这是我尝试过的。
date = "09/10/2015 6:17:09 PM"
date_obj = datetime.datetime.strptime(date, '%d/%m/%Y %I:%M:%S %p')
但这会出错,因为小时不是零填充的。格式化是按照表格上的 datetime documentation,它不允许小时有一位数。
我尝试将日期拆分,添加一个零,然后将字符串重新组合在一起,虽然这可行,但这似乎不太健壮/理想。
date = "09/10/2015 6:17:09 PM"
date = date.split()
date = date[0] + " 0" + date[1] + " " + date[2]
任何关于如何直接获取datetime 对象的建议,或者更好的填充小时的方法都会有所帮助。
谢谢。
【问题讨论】:
-
我在 python 2.7 中得到了
2015-10-09 18:17:09作为输出。你能分享一下具体的例外吗?你用的是哪个版本的python? -
这不是问题的原因,但您声明日期字符串的格式为
mm/dd/yyyy,但代码假定'%d/%m/%Y,即日期和月份互换。
标签: python string datetime python-datetime