Давно знаю про этот момент, ибо узнал на опыте. Однако всегда было лень заниматься этим. Сейчас вот столкнулся так что пришлось готовить костыли, а не хочется. Суть проблемы видна в данном дампе:
>>> a = dict()
>>> a
{}
>>> a['a'] = '+'
>>> a
{'a': '+'}
>>> a['b'] = '+'
>>> a
{'a': '+', 'b': '+'}
>>> a['c'] = '-'
>>> a
{'a': '+', 'c': '-', 'b': '+'}