Quando se trabalha com dicionários, às vezes é importante iterar sobre todas as chaves, ou talvez todos os valores, ou por vezes todos os pares chave-valor. O acesso a todas as chaves é possível através do método keys(). O acesso a todos os valores é possível através do método values(), enquanto o acesso aos pares chave-valor é possível através do método items():
for k in population.keys():
print(k.lower())
# Ou até mesmo
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() é uma lista de tuplas
# cada tupla é um par (chave, 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
Desafio
Dada uma lista de n pacientes com as suas medições de pressão arterial, pede-se que calcule a pressão arterial média para cada paciente. Existem m medições, cada uma da forma nome-do-paciente: pressão-arterial.
A primeira linha da entrada contém um único inteiro m. As próximas m linhas contêm as medições no formato nome-do-paciente: pressão-arterial.
O programa deve imprimir a pressão arterial média por paciente na ordem de aparecimento na entrada. O formato deve ser semelhante ao da entrada nome-do-paciente: pressão-arterial-média.
Entrada
Saída
6
Anna: 100
Ani: 120
Anna: 120
Anna: 90
Ani: 100
Bob: 90