2011-02-15 11 views
15

En python 2.6 Deseo realizar una operación en cada valor del diccionario, por ejemplo, quiero multiplicar por 2 para cada uno de ellos. ¿Cómo codificar menos para esta tarea?Python: realice una operación en cada valor de diccionario

+2

Menos de qué? Muéstranos el código que has escrito. –

+4

código menos? No escribiste una sola línea de código. ¿Cómo sería menos posible? | Etiquetar como tarea. –

Respuesta

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

actualización de cada tecla en my_dict:

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