Ihr hat mir schon so sehr geholfen, dass das Hauptprogramm (welches eine Runde eines Kartenspiels simuliert) perfekt funktioniert.
Ich habe nun das ganze Hauptprogramm in eine Funktion geschrieben und rufe es in einer Schleife auf.
Die so erstellte Funktion hat als result Wert nur den Gewinner.
Diese Schleife befindet sich in meiner "Simulations"- Datei.
Das Problem ist nun, dass ich bestimmte Werte in eine Text Datei speichern muss???, sollte????, da ich später untersuchen will mit welchen Anfangskarten ich gewonnen oder verloren habe.
In meiner Vorstellung sollten in der Text-Datei die 4 Starthände der 4 Spieler in den ersten 4 Zeilen und in der fünften Zeile, welcher dieser Spieler gewonnen hat.
Soweit zur Theorie, leider bin ich noch immer ein recht blutiger Anfänger und weiß nicht ob das Format, das ich erzeugen will überhaupt sinnvoll ist.
Es sollte jedenfalls, so gespeichert werden, dass es für den Menschen lesbar ist.
Ich hab mich nun einige Stunden damit verbracht mit JSON en und decoder zu arbeiten.
Ich verstehe nicht wie man mehrere Sachen in eine Datei hineinschreiben kann.
Bei mir scheint es so zu sein, als würde er immer die Erste Zeile überschreiben.
Momentan sieht mein Versuch so aus.
Die Werte S1,S2,S3,S4 müssen zu einer anderen Zeit in die Datei geschrieben werden, als der Gewinner, da S1 bis S4 ja verändert wird.
Deswegen habe ich mir gedacht ich speicher das als 2 verschiedene Dateien ab.
Diese Funktionen werden an der entsprechenden Stelle in Main aufgerufen.
Code: Alles auswählen
def print_in_data_gewinner(gewinner):
with open('Gewinner.txt', 'w') as filehandle:
json.dump(gewinner, filehandle)
def print_in_data_hand(S1, S2, S3, S4):
with open('Data.txt', 'w') as filehandle:
json.dump(S1, filehandle)
json.dump(S2, filehandle)
json.dump(S3, filehandle)
json.dump(S4, filehandle)
Welches Format würden ihr empfehlen? (Es muss ja wieder eingelesen werden)
Ist es sinnvoll 2 verschiedene Dateien dafür zu verwenden?
Wieso werden die Zeilen überschrieben und wie verhindere ich das?