diff --git a/Nim-Sum.py b/Nim-Sum.py index 69156e9..bf39c28 100644 --- a/Nim-Sum.py +++ b/Nim-Sum.py @@ -1,3 +1,4 @@ +import json import random import datetime @@ -44,15 +45,27 @@ def heuristique_nim_sum(etat_jeu): nb_objets_a_prendre = nb_objets - (nb_objets ^ nim_sum) return i, nb_objets_a_prendre -# Sauvegarder la partie dans un fichier texte +# Sauvegarder la partie dans un fichier json def sauvegarder_partie(historique, resultat): - with open("historique_nim.txt", "a") as fichier: - fichier.write("\n===== Nouvelle Partie =====\n") - fichier.write(f"Date : {datetime.datetime.now()}\n") - for entree in historique: - fichier.write(entree + "\n") - fichier.write(f"Résultat : {resultat}\n") - fichier.write("==========================\n") + partie = { + "date": str(datetime.datetime.now()), + "historique": historique, + "resultat": resultat + } + + # Chargement du fichier JSON existant ou création s'il n'existe pas + try: + with open("historique_nim.json", "r") as fichier: + sauvegardes = json.load(fichier) + except FileNotFoundError: + sauvegardes = [] + + # Ajouter la nouvelle partie à l'historique + sauvegardes.append(partie) + + # Sauvegarde dans le fichier + with open("historique_nim.json", "w") as fichier: + json.dump(sauvegardes, fichier, indent=4) # Boucle principale pour jouer une partie def jeu_de_nim(tas_initial, mode="normal"):