我在字符串列表中有这些数字:
2018,12,12,11,10,38.971
,我想将其转换为:
2018/12/12 11:10:38.971
答案 0 :(得分:2)
您可以在不修改字符串的情况下解析它,只需指定格式
datetime.strptime()
适当地:
In [1]: from datetime import datetime
In [2]: s = "2018,12,12,11,10,38.971"
In [3]: datetime.strptime(s, "%Y,%m,%d,%H,%M,%S.%f")
Out[3]: datetime.datetime(2018, 12, 12, 11, 10, 38, 971000)
如果您输入的内容是列表,则可以先“ str.join”列表中的项目,然后使用.strptime()
:
In [10]: l = ['2018', '12', '12', '11', '10', '38.971']
In [11]: s = ",".join(l)
In [12]: datetime.strptime(s, "%Y,%m,%d,%H,%M,%S.%f")
Out[12]: datetime.datetime(2018, 12, 12, 11, 10, 38, 971000)
答案 1 :(得分:0)
您可以将日期时间的strftime
与日期时间的strptime
一起使用,就像这样:
from datetime import datetime
lst = ['2018','12','12','11','10','38.971']
d = ' '.join(lst)
print(datetime.strptime(d, '%Y %m %d %H %M %S.%f').strftime('%Y/%m/%d %H:%m:%S.%f'))
# 2018/12/12 11:12:38.971000