python将字符串“20150411 21:23:39+0530”转换为datetim

2024-04-26 00:31:26 发布

您现在位置:Python中文网/ 问答频道 /正文

我知道如何使用strptime,但我如何解释+0530

d = '2015-04-11 21:23:39+0530'
d = datetime.strptime(d,'%Y-%m-%d %H:%M:%S')

注意请不要建议将0530切掉。在


Tags: datetime建议strptime
2条回答

您可以考虑使用^{}

from dateutil import parser
d = '2015-04-11 21:23:39+0530'
p = parser.parse(d)

>>>p
datetime.datetime(2015, 4, 11, 21, 23, 39, tzinfo=tzoffset(None, 19800))
>>>p.date()  
datetime.date(2015, 4, 11)
>>>p.time()
datetime.time(21, 23, 39)
>>>p.utcoffset()
datetime.timedelta(0, 19800) #seconds
>>>str(p.utcoffset())
'5:30:00' #UTC offset 

使用iso8601

>>> import iso8601
>>> iso8601.parse_date('2015-04-11 21:23:39+0530')
datetime.datetime(2015, 4, 11, 21, 23, 39, tzinfo=<FixedOffset '+05:30' datetime.timedelta(0, 19800)>)
>>> type(iso8601.parse_date('2015-04-11 21:23:39+0530'))
<type 'datetime.datetime'>

相关问题 更多 >