在 python 中更改、重置和增加时间
Change, reset and increment time in 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,我希望 start_time 恢复到原始值,即 0230。
您可以使用另一个变量作为原始值的占位符。
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
我需要在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,我希望 start_time 恢复到原始值,即 0230。
您可以使用另一个变量作为原始值的占位符。
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