将秒转换为日期时间

时间:2020-05-06 11:42:52

标签: python datetime

我正在尝试将2分钟的时间步转换为日期时间格式。我想做一整天,所以从0分钟到1440分钟以2分钟为步长。

我的问题是,当我将0秒转换为日期时间时,它将输出01:00:00,而我想要00:00:00。这是代码(len(df.index)= 720,来自我拥有的这720个时间步长的数据集):

from datetime import datetime

timeline = []
for timestep in range(len(df.index)):
    time = datetime.fromtimestamp(timestep*2*60).strftime("%H:%M:%S")
    timeline.append(time)
print(timeline[:5])

输出是。知道为什么吗?

['01:00:00', '01:02:00', '01:04:00', '01:06:00', '01:08:00']

1 个答案:

答案 0 :(得分:0)

datetime是完整的日期和时间,类似于May 6, 2020 7:23PM,但您要查找的是时间段-a timedelta

from datetime import timedelta

timeline = []
for timestep in range(len(df.index)):
    time = timedelta(seconds=timestep)
    timeline.append(time)

然后,您可以将每个timedelta对象转换为字符串HH:MM:SS

>>> str(timedelta(seconds=0))
'0:00:00'
>>> str(timedelta(seconds=60))
'0:01:00'
>>> str(timedelta(seconds=65))
'0:01:05'