# -*- coding:utf8 -*- # class Scoremanage(object): "gestion d'un fichier des 10 meilleurs scores et noms des joueurs" def __init__(self,namfisco,score=0,gamer=""): import pickle self.pickle=pickle self.namfisco=namfisco self.score=score self.gamer=gamer def inisco(self): "fonction interne/utile de (re)initialisation du fichier de scores" tmpsco=[0,"no one"]*10 tmpfsc=open(self.namfisco,"wb") self.pickle.dump(tmpsco,tmpfsc) tmpfsc.close() return def vrisco(self): "fonction interne de vérification d'existence du fichier de scores" try: fs=open(self.namfisco,"rb") fs.close() except: self.inisco() return def lirsco(self): "fonction utile de lecture du fichier de scores" self.vrisco() fisco=open(self.namfisco,"rb") sco=self.pickle.load(fisco) fisco.close() return(sco) def addsco(self): "fonction utile d'ajout dans le fichier scores d'un score d'un joueur" totsco=self.lirsco() if self.gamer=="": self.gamer="Anonymous" tmpsco=[self.score,self.gamer] fs=open(self.namfisco,"wb") for p in range(0,19,2): if self.score > totsco[p]: totsco=totsco[:p]+tmpsco+totsco[p:] del totsco[20:] break self.pickle.dump(totsco,fs) fs.close() return