将AM / PM时间转换为纪元

时间:2015-04-28 13:09:40

标签: python date datetime epoch

我正在尝试将字符串日期转换为纪元,但它似乎没有接受上午或下午。时间总是默认为上午。

我试过这个:

dt = '2015-05-04 5:55PM'
pattern = '%Y-%m-%d %H:%M%p'
epochDate = int(time.mktime(time.strptime(dt, pattern)))
print epochDate

# Result
1430684700

# Checking output
datetime.datetime.fromtimestamp(1430684700).strftime('%Y-%m-%d %H:%M:%S%p')

# Doesn't show PM
'2015-05-04 05:55:00AM'

我不确定我在这里做错了什么?

1 个答案:

答案 0 :(得分:-2)

您应该使用python-dateutil库:

>>> import dateutil.parser
>>> dateutil.parser.parse('2015-05-04 5:55PM')
datetime.datetime(2015, 5, 4, 17, 55)
>>> dateutil.parser.parse('2015-05-04 5:55AM')
datetime.datetime(2015, 5, 4, 5, 55)