Problem with OrderedDict
Terry Reedy
tjreedy at udel.edu
Wed May 30 05:03:02 EDT 2018
On 5/30/2018 4:48 AM, Frank Millman wrote:
> Hi all
>
> I want to work backwards to solve this problem, so I have to explain it
> forwards to put you in the picture.
>
> I have an Ordered Dictionary. Under certain circumstances I am getting
> this error -
>
> RuntimeError: OrderedDict mutated during iteration
This should mean that the value associated with a key was sometimes changed.
> I can see why this is happening, and I am pretty sure I can fix it by
> making a copy to iterate over.
>
> However, the error seems to be intermittent - there are times when it
> should fail, but does not - so I want to investigate further.
>
> I tried to reduce it to a simple example. I succeeded, but there are two
> problems -
>
> 1. It always fails, so I have not reproduced the intermittent nature yet.
>
> 2. It gives a different error -
>
> RuntimeError: dictionary changed size during iteration
This should mean that a new key-value pair was always added or removed.
> So my first question is, what is the difference between the two error
> messages? I am using an OrderedDict for my test as well, so the
> difference is not caused by using a normal dictionary.
>
> I am using Python 3.6.0.
--
Terry Jan Reedy
More information about the Python-list
mailing list