2011-02-15 5 views
15

En python 2.6 je veux effectuer une opération sur chaque valeur de dictionnaire, par exemple, je veux multiplier par 2 pour chacun d'eux. Comment coder moins pour cette tâche?Python: Effectuer une opération sur chaque valeur de dictionnaire

+2

Moins de quoi? Montrez-nous le code que vous avez écrit. –

+4

code moins? Vous n'avez pas écrit une seule ligne de code. Comment serait moins possible? | Marquage comme devoirs. –

Répondre

48
# A nice one liner (edited to remove square brackets) 
my_dict.update((x, y*2) for x, y in my_dict.items()) 
12
# Multiply every value in my_dict by 2 
for key in my_dict:  
    my_dict[key] *= 2 
4
for key in d: 
    d[key] = d[key] * 2 
3

mise à jour chaque clé my_dict:

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