将特定时间字符串转换为正常时间?

时间:2017-12-20 21:40:53

标签: python date

我目前正在开展一个小项目,但我遇到了问题,我不知道如何转换这个"2017-12-22T05:00:00+01:00"时间,在一个可读的时间,我想得到这种格式"%Y-%m-%d %H:%M:%S"。到目前为止没有成功,我可以做些什么来归档这个?

3 个答案:

答案 0 :(得分:1)

首先,您需要将输入日期时间字符串解析为datetime对象。然后将datetime对象转换为所需的格式。最简单的方法是使用第三方dateutil包。您可以使用pip安装它。

>>> from dateutil.parser import parse
>>> dt = parse('2017-12-22T05:00:00+01:00')
>>> dt
datetime.datetime(2017, 12, 22, 5, 0, tzinfo=tzoffset(None, 3600))

可以使用datetime.strftime()转换为新格式:

>>> dt.strftime('%Y-%m-%d %H:%M:%S')
'2017-12-22 05:00:00'

答案 1 :(得分:0)

查看此问题的答案:  How to print date in a regular format in Python?

这是一个非常全面的答案,链接到文档

答案 2 :(得分:0)

如果每次都使用相同的字符串,您可以使用以下内容:

time_string = '2017-12-22T05:00:00+01:00'
year = time_string.split('-')[0]
month = time_string.split('-')[1]
day = time_string.split('-')[2].split('T')[0]
time = time_string.split('T')[1].split(':')
hour = time[0]
minute = time[1]
second = time[2].split('+')[0]
print(second,minute,hour,day,month,year)

(但可能有更好的方法。)