问题描述
除了语句将命中时间增加10%而不是10秒外,它还应该打印时间,然后才会增加
from time import sleep
A = 10
B = 'ten'
while True:
sleep_time = 10
try:
print(A-B)
except:
print('starting loop')
sleep(sleep_time)
sleep_time+=10
解决方法
您有一个大问题,那就是sleep_time永远不会改变,因为在每次循环迭代的顶部将其设置为10。解决此问题,并进行更改以执行我认为您要的操作,这是代码的修改版本:
from time import sleep
A = 10
B = 'ten'
increase_sleep_by = 10 # percentage value
sleep_time = 10.0
while True:
try:
print(A-B)
except:
print('will sleep for ' + str(sleep_time) + ' seconds before retrying')
sleep(sleep_time)
sleep_time *= (100.0 + increase_sleep_by) / 100
哪个生产者:
will sleep for 10.0 seconds before retrying
will sleep for 11.0 seconds before retrying
will sleep for 12.100000000000001 seconds before retrying
will sleep for 13.310000000000002 seconds before retrying
will sleep for 14.641000000000004 seconds before retrying
will sleep for 16.105100000000004 seconds before retrying
will sleep for 17.715610000000005 seconds before retrying
...