Ulrich Eckhardt ha scritto:
Hi!

I wrote a simple loop like this:

  d = {}
  ...
  for k in d:
      if some_condition(d[k]):
          d.pop(k)

If I run this, Python complains that the dictionary size changed during
iteration. I understand that the iterator relies on the internal structure
not changing, but how would I structure this loop otherwise?

my first thought (untested):

use a copy of d for the if clause, then pop from the original.

bye
--
http://mail.python.org/mailman/listinfo/python-list

Reply via email to