Ich habe verschiedene Listen mit Namen und Geburtsjahr wie folgt:
list 1: [ 'John', '1991', 'male']
list 2: [ 'Mac', '1992', 'male']
list 3: [ 'Ria', '1991', 'female']
Und ich möchte in Python drucken als:
Born in 1991:
John, male
Ria, female
Born in 1992:
Mac, male
Lösung des Problems
Sie können ein temporäres Wörterbuch erstellen, in dem der Schlüssel das Jahr und die Werte Listen von (Name, Geschlecht) sind, und dieses Wörterbuch verwenden, um die gewünschte Ausgabe zu drucken:
list_1 = ["John", "1991", "male"]
list_2 = ["Mac", "1992", "male"]
list_3 = ["Ria", "1991", "female"]
tmp = {}
for l in (list_1, list_2, list_3):
name, year, sex = l
tmp.setdefault(year, []).append((name, sex))
for k in tmp:
print("Born in {}:".format(k))
for v in tmp[k]:
print(", ".join(v))
Drucke:
Born in 1991:
John, male
Ria, female
Born in 1992:
Mac, male
Keine Kommentare:
Kommentar veröffentlichen