Bei der Arbeit mit Dictionaries ist es manchmal wichtig, über alle Schlüssel zu iterieren, oder vielleicht alle Werte, oder manchmal alle Schlüssel-Wert-Paare. Der Zugriff auf alle Schlüssel ist über die Methode keys() möglich. Der Zugriff auf alle Werte ist über die Methode values() möglich, während der Zugriff auf die Schlüssel-Wert-Paare über die Methode items() möglich ist:
for k in population.keys():
print(k.lower())
# Oder auch
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() ist eine Liste von Tupeln
# jedes Tupel ist ein (Schlüssel, Wert)-Paar: ('US', 3295000000)
for k, v in population.items():
print(f'{k.lower()}: {v * 2}')
# Alternativ
for k in population:
print(f'{k.lower()}: {population[k] * 2}')
# us: 6590000000
# mexico: 258000000
# armenia: 6000000
# portugal: 20600000
Herausforderung
Gegeben ist eine Liste von n Patienten mit ihren Blutdruckmessungen. Sie sollen den durchschnittlichen Blutdruck für jeden Patienten berechnen. Es gibt m Messungen, jede in der Form patient-name: blood-pressure.
Die erste Zeile der Eingabe enthält eine einzelne Ganzzahl m. Die nächsten m Zeilen enthalten die Messungen in der Form patient-name: blood-pressure.
Das Programm soll den durchschnittlichen Blutdruck pro Patient in der Reihenfolge des Auftretens in der Eingabe ausgeben. Das Format sollte ähnlich wie die Eingabe sein: patient-name: average-blood-pressure.
Eingabe
Ausgabe
6
Anna: 100
Ani: 120
Anna: 120
Anna: 90
Ani: 100
Bob: 90