如何在python中将字符串转换为datetime对象?

时间:2015-09-06 18:25:51

标签: python

我的日期格式为

 d  = '2014-03-17 13:57:59-07:00'

如何将上述内容转换为时间戳对象 以下作品

d1 = datetime.datetime.strptime(d, "%Y-%m-%d %H:%M:%S-07:00")

但是7是硬编码的......我不确定那是什么? 我如何忽略那部分

2 个答案:

答案 0 :(得分:4)

您可以使用支持将字符串解析为日期时间的dateutil包。您可以通过执行以下操作来安装它:

pip install python-dateutil

然后:

import dateutil.parser

d = dateutil.parser.parse('2014-03-17 13:57:59-07:00')

您日期中的7或8是与UTC的偏移量 - 它用于指示日期时间所在的时区。

答案 1 :(得分:1)

Arrow具有带有和不带冒号的时区偏移的格式指令,用于转换为datetime对象和从datetime对象转换的功能,并且可以使用Python 2和3.假设它已经安装,可以通过'pip install arrow'完成,以下是它如何用于将'2014-03-17 13:57:59-07:00'转换为日期时间对象:

import arrow
d = '2014-03-17 13:57:59-07:00'
f = 'YYYY-MM-DD H:mm:ssZ'
d1 = arrow.get(d, f).datetime

箭头的文档位于http://crsmithdev.com/arrow/