# ############################################ # La programmation orienté objet # Les méthodes et les attributs cachés # Mars 2025 # nsi.gecif.net # ############################################ # Définition d'une classe Perso : class Perso: """ La classe Perso attend 3 paramètres : nom, prénom, et la date de naissance (optionnelle) Exemple d'instanciation : perso1=Perso("Dupont","Pierre","25/12/2000")""" def __init__(self,n,p,d_n=None): self.nom=n self.prenom=p self.date_naissance=d_n def __repr__(self): return "Vous avez lancé l'objet directement dans la console !" def __str__(self): return "Vous avez demandé un affichage de l'objet par print" def age(self): return 2025-int(self.date_naissance[-4:]) def info(self): print("Voici toutes les informations disponibles :") print("Nom :",self.nom) print("Prénom :",self.prenom) if self.date_naissance==None: print("Date de naissance non précisée") else: print("Date de naissance :",self.date_naissance) print("Age : %d ans" % self.age()) # Déclaration des instances de la classe Perso : perso1=Perso("PARADI","Hector","02/11/2000") perso2=Perso("MOREAU","Valentine","27/08/2007") perso3=Perso("RIVOLI","Gaspard") # Affichage d'informations : #print(perso1.__doc__) #help(perso1) perso1.info() print("-------------------------------") perso3.info()