вот идея: у меня есть orderedDict вроде так (упрощенно):Накопив orderedDict
{'012013': 3, '022013': 1, '032013': 5}
, что я хочу сделать, это сделать все ценности, накопленные каким-то итерация через него. НАПРИМЕР, Я хочу, чтобы конечный результат, чтобы походить на это (на основании приведенного выше примера)
{'012013': 3, '022013': 4, '032013': 9}
я думал что-то вдоль этих линий, но явно там должны были бы быть способ, чтобы определить предыдущие ключи.
for key, value in month_dictionary.iteritems():
month_dictionary[key] = month_dictionary[key] + month_dictionary[previous_key]
Я предполагаю, что это не плохая практика, потому что orderedDict подразумевает, что он поддерживает порядок, поэтому он должен быть стабильным, нет? Как мне это сделать?
спасибо
Просто хранить предыдущий ключ в переменной и игнорировать первую запись в пункты. –
Вы можете использовать это как предлог для перехода на Python 3: 'OrderedDict (zip (d, itertools.accumulate (d.values ())))'. – DSM