Python: выполнить операцию над каждым значением словаря

В python 2.6 я хочу выполнить операцию для каждого значения словаря, например, я хочу умножить на 2 для каждого из них. Как закодировать меньше для этой задачи?

Ответы

Ответ 1

# A nice one liner (edited to remove square brackets)   
my_dict.update((x, y*2) for x, y in my_dict.items())

Ответ 2

# Multiply every value in my_dict by 2
for key in my_dict:    
    my_dict[key] *=  2

Ответ 3

обновить каждый ключ в my_dict:

my_dict.update({n: 2 * my_dict[n] for n in my_dict.keys()})

Ответ 4

for key in d:
    d[key] = d[key] * 2