Reprenons notre objet voiture :
class Voiture:
def __init__(self, marque, modele, couleur):
self.marque=marque
self.modele=modele
self.couleur=couleur
Voiture1=Voiture("Renault", "Mégane", "Rouge")
Voiture2=Voiture("Ford", "Focus", "Jaune")
print(Voiture2.modele)
Nous allons faire parler nos voitures en ajoutant une méthode à la classe "Voiture" :
class Voiture:
def __init__(self, marque, modele, couleur):
self.marque=marque
self.modele=modele
self.couleur=couleur
def dis_moi_tout(self):
print("Je suis une", self.marque, self.modele, self.couleur)
Voiture1=Voiture("Renault", "Mégane", "Rouge")
Voiture2=Voiture("Ford", "Focus", "Jaune")
Voiture2.dis_moi_tout()
Une autre méthode plus élaborée :
class Voiture:
def __init__(self, marque, modele, couleur):
self.marque=marque
self.modele=modele
self.couleur=couleur
#On ajoute un nouvel attribut:
self.compteur=0
def dis_moi_tout(self):
print("Je suis une", self.marque, self.modele, self.couleur, "avec", self.compteur, "km.")
def roule(self, km):
#Ici, km doit être un entier.
#On va ajouter des kilomètres au compteur de la voiture:
self.compteur+=km
print("Je viens de rouler pendant", km, "km.")
Voiture1=Voiture("Renault", "Mégane", "Rouge")
Voiture2=Voiture("Ford", "Focus", "Jaune")
#On fait rouler la Voiture2 pendant 23 km:
Voiture2.roule(23)
#Encore un peu de route:
Voiture2.roule(56)
#On fait parler Voiture2:
Voiture2.dis_moi_tout()
* Remarque:*
Les objets peuvent avoir de nombreux attributs et méthodes. De plus, si vous importez des modules (comme Tkinter), certains objets sont prédéfinis et il est difficile de connaître par coeur tout ce qu'on peut leur faire subir.
Pour connaître les méthodes et attributs d'un objet, il existe une fonction : dir()
class Voiture:
def __init__(self, marque, modele, couleur):
self.marque=marque
self.modele=modele
self.couleur=couleur
self.compteur=0
def dis_moi_tout(self):
print("Je suis une", self.marque, self.modele, self.couleur, "avec", self.compteur, "km.")
def roule(self, km):
self.compteur+=km
print("Je viens de rouler pendant", km, "km.")
Voiture1=Voiture("Renault", "Mégane", "Rouge")
#Que peut-on faire subir à l'objet "Voiture1"?
print(dir(Voiture1))
On voit alors apparaître des méthodes encadrées de "__". Ce sont des méthodes spéciales...
On voit aussi nos attributs et nos méthodes.
Connaissez-vous les Tamagotchi ?
Ce sont des animaux de compagnie virtuels japonais.
Ils ont un nom, une couleur, un poids, une humeur (content, en colère...)...
Ils aiment les câlins et manger (mais ils grossissent). Ils peuvent faire du sport pour maigrir un peu...
Créez votre Tamagotchi !