[Python-Dev] Making sure dictionary adds/deletes during iteration always raise exception

Chris Angelico rosuav at gmail.com
Tue Dec 13 13:17:06 EST 2016


On Wed, Dec 14, 2016 at 5:13 AM, Joe Jevnik <jjevnik at quantopian.com> wrote:
>> Is it possible to add a key, triggering a resize of the dict, then
> remove one, and continue iterating through the old (deallocated)
> memory?
>
> You can add and remove keys between calling next which would resize the
> dictionary; however, it will not iterate through uninitialized memory. The
> dictiter holds the current index and each time next is called it goes
> directly to ma_keys->dk_entries[saved_index] or ma_values[saved_index]

Okay, so it's fine then. Cool. Thanks for the info.

ChrisA


More information about the Python-Dev mailing list