arnodel at googlemail.com
Sat Jan 23 16:19:06 CET 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!
More information about the Python-list