Créer une classe - Hesspieux/HourOfCode GitHub Wiki

Notre première classe

class Personne:

	def __init__(self):
		self.nom = "Espieux"
		self.prenom = "Pierre"
		self.age = 18
  • Une classe se définit à l'aide du mot clef class suivi du nom de la classe, sans oublier les :.
  • __init__() est le constructeur de la classe. Il prend toujours en premier paramètre une variable appelée par convention self.
  • On déclare dans le constructeur toutes les variables de la classe.

Exemple :

On crée un objet pierre de type Personne.

pierre = Personne()
pierre.nom
pierre.prenom
pierre.age

Spécification de la classe

Si on souhaite spécifier pierre, il faut ajouter des paramètres au constructeur :

class Personne:

	def __init__(self, nom, prenom, age):
		self.nom = nom
		self.prenom = prenom
		self.age = age

Exemple :

pierre = Personne("Espieux", "Pierre", 18)
pierre.nom
pierre.prenom
pierre.age

Valeurs par défauts

On peut désirer que certaines propriétés de la classe possèdent une valeur par défaut. Ils deviennent donc facultatifs pour la création d'un objet.

class Personne:

	def __init__(self, nom, prenom, age = 18):
		self.nom = nom
		self.prenom = prenom
		self.age = age

Exemple :

pierre = Personne("Espieux", "Pierre")
pierre.nom
pierre.prenom
pierre.age

Ajout d'une méthode dans la classe

class Personne:

	def __init__(self, nom, prenom, age = 18):
		self.nom = nom
		self.prenom = prenom
		self.age = age

	def donne_ton_age(self)
		return "Bonjour j'ai " + self.age + " an."
  • Comme pour le constructeur, toute méthode de classe doit être précédée du mot-clef def.
  • Une méthode peut renvoyer un résultat. Dans ce cas on utilise return.

Exemple :

pierre = Personne("Espieux", "Pierre")
pierre.presente()