# -*- coding: ansi -*- from print_tables import tables import csv # Klassen-Daten einlesen klassen = { "s6a": [], "s6b": [], "s6c": [], "s6ds": [], "s6es": [] } # test commit try: with open("vornamen_6kl_25.csv", "r", encoding="utf-8") as f: reader = csv.reader(f, delimiter=";") for row in reader: for i, key in enumerate(klassen.keys()): if i >= len(row): continue name = row[i].strip() if name: klassen[key].append(name) except FileNotFoundError as err: print(err) # Alphabetisch sortieren und unique machen, aber Gesamtzahl vorher sichern gesamtzahlen = {} for key in klassen: gesamtzahlen[key] = len(klassen[key]) # Anzahl aller Schüler inkl. Duplikate klassen[key] = sorted(set(klassen[key])) # Unique + alphabetisch # Originale Tabelle ausgeben tables.print_table(klassen) # Statistik vorbereiten stats = { "Klasse": [], "Eigene Vornamen": [], "Schüler gesamt": [] } gesamt_schueler = 0 for klasse, namen in klassen.items(): stats["Klasse"].append(klasse) stats["Eigene Vornamen"].append(len(namen)) stats["Schüler gesamt"].append(gesamtzahlen[klasse]) gesamt_schueler += gesamtzahlen[klasse] # Statistik-Tabelle ausgeben print("\nKlassenstatistik:") tables.print_table(stats) print(f"\nGesamtanzahl Schüler: {gesamt_schueler}") # Alle unique Namen über alle Klassen alle_namen = set() for namen in klassen.values(): alle_namen.update(namen) print(f"Gesamtzahl eigene Vornamen: {len(alle_namen)}")