iterating lists
Arnaud Delobelle
arnodel at googlemail.com
Sat Jan 23 10:19:06 EST 2010
ceciliaseidel at gmx.de writes:
> As you were talking about list.pop()...
>
> Is anyone able to reproduce the following and explain why this happens
> by chance? (Using 3.1.1)
>
> l1 = ["ready", "steady", "go"]
> l2 = ["one", "two", "tree"]
> l3 = ["lift off"]
>
> for w in l1:
> print(l1.pop()) #prints only "go steady" - why not "ready"??
>
I suggest you simulate the loop above using pen and paper, writing the
value of w and the value of l1 at each iteration. The behaviour you are
observing should then be clearly explained. And you should also realise
that it's a really bad idea to mutate a list that you are iterating on!
HTH
--
Arnaud
More information about the Python-list
mailing list