在运行时更改Python的循环范围(上限)
如何在运行时更改python for循环的上限 代码在运行时更改Python的循环范围(上限),python,for-loop,runtime,variable-assignment,Python,For Loop,Runtime,Variable Assignment,如何在运行时更改python for循环的上限 代码 from random import randint lower_limit = 0 higher_limit = 200 step_size = 5 for i in range(lower_limit, higher_limit, step_size): # do something higher_limit = higher_limit + randint(0, 5) 代码运行到第一个更高的限制,不关心声明的限制
from random import randint
lower_limit = 0
higher_limit = 200
step_size = 5
for i in range(lower_limit, higher_limit, step_size):
# do something
higher_limit = higher_limit + randint(0, 5)
代码运行到第一个更高的限制,不关心声明的限制,可以做些什么来实现这一点?您需要在以下情况下使用:
from random import randint
lower_limit = 0
higher_limit = 200
step_size = 5
while i <higher_limit:
# do something
higher_limit = higher_limit + randint(0, 5)
i += 5
来自随机导入randint
下限=0
上限=200
步长=5
while i您需要使用while:
from random import randint
lower_limit = 0
higher_limit = 200
step_size = 5
while i <higher_limit:
# do something
higher_limit = higher_limit + randint(0, 5)
i += 5
来自随机导入randint
下限=0
上限=200
步长=5
而i一旦创建范围,就不能修改它。我认为您可以更轻松地重新构造逻辑,并将范围
替换为而:
lower_limit = 0
higher_limit = 200
step_size = 5
i = 0
while lower_limit <= i < higher_limit:
# do something
i = i + step_size
higher_limit = higher_limit + randint(0, 5)
下限=0
上限=200
步长=5
i=0
而下限一旦创建范围,就不能修改它。我认为您可以更轻松地重新构造逻辑,并将范围
替换为而:
lower_limit = 0
higher_limit = 200
step_size = 5
i = 0
while lower_limit <= i < higher_limit:
# do something
i = i + step_size
higher_limit = higher_limit + randint(0, 5)
下限=0
上限=200
步长=5
i=0
虽然下限可能您可以定义自己的范围版本(简化):
来自随机导入randint
def更高_范围(开始、结束、步骤,包括):
i=开始
而我<直到:
产量一
i+=阶跃
最高+=randint(0,inc)
对于较高_范围(0,10,5,5)的j:
打印j
显然,不能保证它会很快终止…也许您可以定义自己版本的range(简化版):
来自随机导入randint
def更高_范围(开始、结束、步骤,包括):
i=开始
而我<直到:
产量一
i+=阶跃
最高+=randint(0,inc)
对于较高_范围(0,10,5,5)的j:
打印j
显然,不能保证它会很快终止…谢谢,我没有注意到这一点。我改了:)谢谢,我没注意到。我改了:)