python中的更改、重置和增量时间

2024-09-29 21:59:43 发布

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

我需要在python中增加时间,如果循环中范围的值增加,我需要将时间设置为原始值

范例

start_time = '0230'
start_time = datetime.strptime(start_time, '%H%M')

difference_time = '0030'
difference_time = datetime.strptime(differece_time, '%H%M')

differnce_delta = timedelta(
    hours=difference.hour, minutes=difference.minute)

listvar = [5, 3, 4]

for i in range(3):
    x = listvar[i]
    for loop in range(x)
        print(f'{start_time.hour}:{start_time.minute}')
        start_time += difference_delta

现在如果i的值变为2,我希望开始时间回到初始值,即0230


Tags: infordatetimetime时间rangestartdelta
1条回答
网友
1楼 · 发布于 2024-09-29 21:59:43

可以使用另一个变量作为原始值的占位符

    start_time = '0230'
    start_time_holder = '0230'
    start_time = datetime.strptime(start_time, '%H%M')

    difference_time = '0030'
    difference_time = datetime.strptime(differece_time, '%H%M')

    differnce_delta = timedelta(
        hours=difference.hour, minutes=difference.minute)

    listvar = [5, 3, 4]

    for i in range(5):
        start_time = start_time_holder
        x = listvar[i]
        for loop in range(x):
            print(f'{start_time.hour}:{start_time.minute}')
            start_time += difference_delta

仅供参考:在x=listvar[i]处会出现索引超出范围的错误,因为范围是5,但列表长度只有3

相关问题 更多 >

    热门问题