Neil Cerutti wrote:
On 2010-10-21, James Mills <prolo...@shortcircuit.net.au> wrote:

Rather than creating a new dict why don't you just do:

def _scrunch(d):
  for k, v in d.items():
     if v is None:
        del d[k]


In Python 3, where items returns an iterator, modifying the
dictionary in this way may lead to cirrhossis of the dictionary.

Not only cirrhosis, but a RuntimeError:

Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "<stdin>", line 2, in _scrunch
RuntimeError: dictionary changed size during iteration

~Ethan~
--
http://mail.python.org/mailman/listinfo/python-list

Reply via email to