向开始时间字符串添加持续时间以获取完成时间?

2024-04-23 18:17:36 发布

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

我有一个名为startTime的字符串,我想添加一个duration(以分钟为单位)得到一个finishTime。你知道吗

以下是一些示例数据:

startTime : 10:15

duration: 90

在python中,添加这个持续时间的最佳方法是什么,这样finishTime就是11:45?你知道吗

非常感谢,任何帮助都非常感谢。你知道吗


Tags: 数据方法字符串示例单位持续时间durationstarttime
3条回答

试试这个:

import datetime

d = datetime.datetime.strptime("10:12","%H:%m") + datetime.timedelta(minutes=90)
new = d.strftime('%H:%m')

new将是11:45。你知道吗

可以使用^{}将字符串转换为datetime对象,并使用pd.to_timedelta添加分钟数。最后,使用^{}将datetime转换为所需的格式:

import pandas as pd
(pd.to_datetime( '10:15', format='%H:%M') + pd.to_timedelta(90, unit='m')).strftime('%H:%M')
#'11:45'

我建议对这样的任务使用^{},因为它比直接使用datetime模块直观得多。你知道吗

import pandas as pd
startTime = '10:15'
duration = '90'
finishTime = (pd.to_datetime(startTime , format='%H:%M') 
              + pd.to_timedelta(duration + 'min')).strftime(format='%H:%M')

正如Torxed和shmee所指出的,pandas不是一个内置模块,它相当大,大约有70MB,因此它可能不适合所有人。
但由于pandas是处理时间序列数据的最佳工具,而且这个问题看起来像是处理时间序列时通常需要的问题,因此我认为用pandas解决这个问题可能会很有趣/有用。你知道吗

相关问题 更多 >