From de9183f01905995da44b1e5291da879afcdaa431 Mon Sep 17 00:00:00 2001 From: vincent Date: Mon, 5 Feb 2018 21:52:28 +0100 Subject: [PATCH] ajout fonction save load --- cave.py | 24 ++++++++++++++++++------ 1 file changed, 18 insertions(+), 6 deletions(-) diff --git a/cave.py b/cave.py index 9884299..3ebfbcc 100644 --- a/cave.py +++ b/cave.py @@ -1,14 +1,20 @@ +import pickle class Etageres(object): def __init__(self): self.etageres = [] self.nbetagere = 0 - + + @classmethod + def load_etageres(cls,file): + with open(file, 'rb') as data: + return pickle.load(data) + def add_etagere(self, largeur, hauteur): self.nbetagere += 1 self.etageres.append(Etagere(largeur, hauteur, self)) - + def nbbouteille(self): i = 0 for etagere in self.etageres: @@ -31,6 +37,9 @@ class Etageres(object): self.nbetagere -= 1 return "etagere {} suprimer".format(etagere.num_etagere) + def save_etageres(self): + with open('company_data.pkl', 'wb') as output: + pickle.dump(self,output) def __iter__(self): return iter(self.etageres) @@ -48,10 +57,10 @@ class Etagere(object): for bouteille in self.bouteilles: if (pos_hauteur > self.hauteur or pos_largeur > self.largeur or pos_largeur < 1 or pos_largeur < 1): return "bouteille positioné en dehors des emplacement" - if (pos_largeur == bouteille.pos_largeur and pos_hauteur == bouteille.pos_hauteur): - return "une bouteille existe déja a cette emplacement" - self.bouteilles.append( - Bouteille(pos_largeur, pos_hauteur, couleur, appelation, millesime, self)) + if (pos_largeur == bouteille.pos_largeur and pos_hauteur == bouteille.pos_hauteur): + return "une bouteille existe déja a cette emplacement" + + self.bouteilles.append(Bouteille(pos_largeur, pos_hauteur, couleur, appelation, millesime, self)) return "OK" def remove_bouteille(self, pos_largeur, pos_hauteur): @@ -94,4 +103,7 @@ print(new.etageres[0].bouteilles) print("vos etagére contiennes {} bouteille".format(new.nbbouteille())) print("vos etagére contiennes {} bouteille de rouge".format( new.nbbouteillecouleur("rouge"))) +new.save_etageres() print(new.remove_etagere(new.etageres[0])) +del new +