Quando si lavora con i dizionari, a volte è importante iterare su tutte le chiavi, o magari su tutti i valori, o talvolta su tutte le coppie chiave-valore. L'accesso a tutte le chiavi è possibile tramite il metodo keys(). L'accesso a tutti i valori è possibile tramite il metodo values(), mentre l'accesso alle coppie chiave-valore è possibile tramite il metodo items():
for k in population.keys():
print(k.lower())
# Oppure anche
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() è una lista di tuple
# ogni tupla è una coppia (chiave, valore): ('US', 3295000000)
for k, v in population.items():
print(f'{k.lower()}: {v * 2}')
# In alternativa
for k in population:
print(f'{k.lower()}: {population[k] * 2}')
# us: 6590000000
# mexico: 258000000
# armenia: 6000000
# portugal: 20600000
Sfida
Data una lista di n pazienti con le loro misurazioni della pressione sanguigna, ti viene chiesto di calcolare la pressione sanguigna media per ogni paziente. Ci sono m misurazioni, ognuna nella forma nome-paziente: pressione-sanguigna.
La prima riga dell'input contiene un singolo intero m. Le successive m righe contengono le misurazioni nella forma nome-paziente: pressione-sanguigna.
Il programma dovrebbe stampare la pressione sanguigna media per paziente nell'ordine di apparizione nell'input. Il formato dovrebbe essere simile all'input nome-paziente: pressione-sanguigna-media.
Ingresso
Uscita
6
Anna: 100
Ani: 120
Anna: 120
Anna: 90
Ani: 100
Bob: 90