Al trabajar con diccionarios, a veces es importante iterar sobre todas las claves, o quizá sobre todos los valores, o a veces sobre todos los pares clave-valor. Acceder a todas las claves es posible mediante el método keys(). Acceder a todos los valores es posible mediante el método values(), mientras que acceder a los pares clave-valor es posible mediante el método items():
for k in population.keys():
print(k.lower())
# O incluso
for k in population:
print(k.lower())
# us
# mexico
# armenia
# portugal
for v in population.values():
print(v * 2)
# 6590000000
# 258000000
# 6000000
# 20600000
# population.items() es una lista de tuplas
# cada tupla es un par (clave, valor): ('US', 3295000000)
for k, v in population.items():
print(f'{k.lower()}: {v * 2}')
# Alternativamente
for k in population:
print(f'{k.lower()}: {population[k] * 2}')
# us: 6590000000
# mexico: 258000000
# armenia: 6000000
# portugal: 20600000
Desafío
Dada una lista de n pacientes con sus mediciones de presión arterial, se te pide calcular el promedio de presión arterial para cada paciente. Hay m mediciones, cada una de la forma nombre-del-paciente: presión-arterial.
La primera línea de la entrada contiene un solo entero m. Las siguientes m líneas contienen las mediciones en la forma nombre-del-paciente: presión-arterial.
El programa debe imprimir el promedio de presión arterial por paciente en el orden de aparición en la entrada. El formato debe ser similar a la entrada nombre-del-paciente: promedio-presión-arterial.
Entrada
Salida
6
Anna: 100
Ani: 120
Anna: 120
Anna: 90
Ani: 100
Bob: 90