#!/usr/bin/env python3 """ Vereinfachte Version des Eurojackpot Processors Für spezifische Spaltenstrukturen """ import pandas as pd def process_eurojackpot_simple(combinations_csv, drawn_numbers_csv, output_csv): """ Vereinfachte Verarbeitung mit festen Spaltenstrukturen Parameter: - combinations_csv: CSV mit allen Kombinationen (Spalten: Zahl1, Zahl2, Zahl3, Zahl4, Zahl5) - drawn_numbers_csv: CSV mit gezogenen Zahlen (Spalten: Datum, Z1, Z2, Z3, Z4, Z5) - output_csv: Ausgabedatei """ # Dateien laden print("Lade Kombinationsdatei...") combinations = pd.read_csv(combinations_csv) print("Lade gezogene Zahlen...") drawn = pd.read_csv(drawn_numbers_csv) # Gezogene Kombinationen als Set erstellen (sortiert für Vergleich) drawn_sets = set() for _, row in drawn.iterrows(): # Annahme: Spalten Z1, Z2, Z3, Z4, Z5 enthalten die Zahlen numbers = sorted([row['Z1'], row['Z2'], row['Z3'], row['Z4'], row['Z5']]) drawn_sets.add(tuple(numbers)) print(f"Gefundene gezogene Kombinationen: {len(drawn_sets)}") # Neue Spalte hinzufügen combinations['bereits_gezogen'] = 0 # Jede Kombination prüfen marked = 0 for idx, row in combinations.iterrows(): # Annahme: erste 5 Spalten enthalten die Zahlenkombination combo_cols = combinations.columns[:5] numbers = sorted([row[col] for col in combo_cols]) if tuple(numbers) in drawn_sets: combinations.at[idx, 'bereits_gezogen'] = 1 marked += 1 # Ergebnis speichern combinations.to_csv(output_csv, index=False) print(f"Verarbeitung abgeschlossen!") print(f"Markierte Kombinationen: {marked}") print(f"Ergebnis gespeichert in: {output_csv}") # Beispielaufruf if __name__ == "__main__": process_eurojackpot_simple( "alle_kombinationen.csv", "gezogene_zahlen.csv", "kombinationen_markiert.csv" )