mein code dafür sieht momentan so aus:
Code: Alles auswählen
elif sortierauswahl.get() == "Geburtsdatum":
def sortier_helfer(item):
# Geburtsdatum ist item[2] in der Liste
t, m, y = item[2].split('.')
return (m, t, y)
fname = "personalien.csv"
with open(fname) as fin:
mylist = [[item for item in line.strip().split(',')] for line in fin]
pprint.pprint(mylist)
print('-'*60)
mylist.sort(key=sortier_helfer)
pprint.pprint(mylist)
damit bekomme ich es jetzt im konsolen-fenster auch gut sortiert...
aber wie bekomme ich das ganze jetzt umgewandelt um es im tkinker fenster anzuzeigen??
sortiert nach Vor-/Nachname sieht es bei mir so aus:
Code: Alles auswählen
if sortierauswahl.get() != "Geburtsdatum":
## wenn nach vorname oder Nachname sortiert wird
reader = csv.DictReader(csvdatei, fieldnames = ( "Vorname","Nachname","Geburtsdatum","Handynr","Festnetznr","Adresse")) # creates the reader object
liste = list(reader)
liste.sort(key=lambda x: x[sortierauswahl.get()])
for datensatz in liste:
Zeile = Text(root, height=1, width=100,)
Zeile.grid(row=zeilen_counter, column=1, columnspan=10)
Zeile.insert(END, "{0[Vorname]} {0[Nachname]}, {0[Geburtsdatum]}, {0[Handynr]}, {0[Festnetznr]}, {0[Adresse]}".format(datensatz))
Zeile.configure(state="disabled")
zeilen_counter += 1
wenn ich das versuche zu verbinden, dann sieht das bei mir so aus:
Code: Alles auswählen
## wenn nach Geburtsdatum sortiert wird
elif sortierauswahl.get() == "Geburtsdatum":
def sortier_helfer(item):
# Geburtsdatum ist item[2] in der Liste
t, m, y = item[2].split('.')
return (m, t, y)
reader = csv.DictReader(csvdatei, fieldnames = ( "Vorname","Nachname","Geburtsdatum","Handynr","Festnetznr","Adresse")) # creates the reader object
liste = list(reader)
for datensatz in liste:
Zeile = Text(root, height=1, width=100,)
Zeile.grid(row=zeilen_counter, column=1, columnspan=10)
Zeile.insert(END, "{0[Vorname]} {0[Nachname]}, {0[Geburtsdatum]}, {0[Handynr]}, {0[Festnetznr]}, {0[Adresse]}".format(datensatz))
Zeile.configure(state="disabled")
zeilen_counter += 1
da entsteht auch erstmal kein fehler (mehr). es wird auch sortiert, aber ich weiß nicht wonach jetzt sortiert wird... nach geburtsdatum funktioniert es nicht richtig