在Python中的迭代过程中更改范围的值

班萨
>>> k = 8
>>> for i in range(k):
        print i
        k -= 3
        print k

0-7如果仅print i在for循环中使用上面的代码将打印出数字

我想了解上面的代码,它是如何工作的,有什么方法可以更新其中使用的变量的值,range(variable)以便以不同的方式进行迭代。

还有为什么它总是迭代到初始k值,为什么值不更新。

我知道这是一个愚蠢的问题,但是欢迎所有想法和评论。

极光0001

生成范围后,您将无法更改范围。在Python 2中,range(k)将创建一个从0到k的整数列表,如下所示:[0, 1, 2, 3, 4, 5, 6, 7]k在创建列表之后进行更改将无济于事。

如果要更改要迭代的数字,可以使用while循环,如下所示:

k = 8
i = 0
while i < k:
    print i
    k -= 3
    i += 1

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章