Ao trabalhar com dicionários, é às vezes importante iterar sobre todas as chaves, ou talvez todos os valores, ou às vezes todos os pares chave-valor. Acessar todas as chaves é possível através do método keys(). Acessar todos os valores é possível através do método values(), enquanto acessar os 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 suas medições de pressão arterial, você é solicitado a calcular a pressão arterial média para cada paciente. Existem m medições, cada uma no formato patient-name: blood-pressure.
A primeira linha da entrada contém um único inteiro m. As próximas m linhas contêm as medições no formato patient-name: blood-pressure.
O programa deve imprimir a pressão arterial média por paciente na ordem de aparição na entrada. O formato deve ser semelhante à entrada patient-name: average-blood-pressure.
Entrada
Saída
6
Anna: 100
Ani: 120
Anna: 120
Anna: 90
Ani: 100
Bob: 90