【发布时间】:2014-05-14 06:34:50
【问题描述】:
今天我发现了一个有趣的事实,我无法在“for 循环”中重新分配变量,但为什么呢?
这是我的代码:
>>> my_list = [1,2,3,4,5]
>>> for i in my_list:
>>> if i > 3:
>>> i = 'my_value'
>>> my_list
[1, 2, 3, 4, 5]
【问题讨论】:
-
您希望
i = "foo"在这里完成什么?终止循环?当 for 循环继续时,它的下一次迭代 (NB: Iterators)i将指向迭代器[1, 2, 3, 4]中下一个元素的新引用对象。