Dans le dernier tutoriel, nous avons découvert Python OOP. Nous savons que Python prend également en charge le concept d’objets et de classes.
Un objet est simplement une collection de données (variables) et de méthodes (fonctions). De même, une classe est un modèle pour cet objet.
Avant d’en savoir plus sur les objets, découvrons d’abord les classes en Python.
Cours Python
Une classe est considérée comme un plan d’objets. Nous pouvons considérer la classe comme un croquis (prototype) d’une maison. Il contient tous les détails sur les sols, les portes, les fenêtres, etc. Sur la base de ces descriptions, nous construisons la maison. La maison est l’objet.
Étant donné que de nombreuses maisons peuvent être fabriquées à partir de la même description, nous pouvons créer de nombreux objets à partir d’une classe.
Définir la classe Python
Nous utilisons le class
mot-clé pour créer une classe dans Swift. Par exemple,
class ClassName:
# class definition
Ici, nous avons créé une classe nommée ClassName
.
Voyons un exemple,
class Bike:
name = ""
gear = 0
Ici,
Bike
– le nom de la classename/gear
– variables à l’intérieur de la classe avec des valeurs par défaut""
et 0 respectivement.
Noter: Les variables à l’intérieur d’une classe sont appelées attributs.
Objets Python
Un objet est appelé une instance d’une classe. Par exemple, supposons Bike
est une classe alors nous pouvons créer des objets comme bike1
, bike2
etc. de la classe.
Voici la syntaxe pour créer un objet.
objectName = ClassName()
Voyons un exemple,
# create class
class Bike:
name = ""
gear = 0
# create objects of class
bike1 = Bike()
Ici, bike1
est l’objet de la classe. Maintenant, nous pouvons utiliser cet objet pour accéder aux attributs de classe.
Accéder aux attributs de classe à l’aide d’objets
Nous utilisons le .
notation pour accéder aux attributs d’une classe. Par exemple,
# modify the name property
bike1.name = "Mountain Bike"
# access the gear property
bike1.gear
Ici, nous avons utilisé bike1.name
et bike1.gear
pour modifier et accéder à la valeur de Nom et équipement attribut respectivement.
Exemple 1 : classe Python et objets
# define a class
class Bike:
name = ""
gear = 0
# create object of class
bike1 = Bike()
# access attributes and assign new values
bike1.gear = 11
bike1.name = "Mountain Bike"
print(f"Name: {bike1.name}, Gears: {bike1.gear} ")
Production
Name: Mountain Bike, Gears: 11
Dans l’exemple ci-dessus, nous avons défini la classe nommée Bike
avec deux attributs : Nom et équipement.
Nous avons également créé un objet bike1
de la classe Bike
.
Enfin, nous avons accédé et modifié les propriétés d’un objet à l’aide de la .
notation.
Créer plusieurs objets de classe Python
Nous pouvons également créer plusieurs objets à partir d’une seule classe. Par exemple,
# define a class
class Employee:
# define a property
employee_id = 0
# create two objects of the Employee class
employee1 = Employee()
employee2 = Employee()
# access property using employee1
employee1.employeeID = 1001
print(f"Employee ID: {employee1.employeeID}")
# access properties using employee2
employee2.employeeID = 1002
print(f"Employee ID: {employee2.employeeID}")
Production
Employee ID: 1001 Employee ID: 1002
Dans l’exemple ci-dessus, nous avons créé deux objets employé1 et employé2 de la Employé classer.
Méthodes Python
Nous pouvons également définir une fonction à l’intérieur d’une classe Python. Une fonction Python définie dans une classe est appelée une méthode.
Voyons un exemple,
# create a class
class Room:
length = 0.0
breadth = 0.0
# method to calculate area
def calculate_area(self):
print("Area of Room =", self.length * self.breadth)
# create object of Room class
study_room = Room()
# assign values to all the properties
study_room.length = 42.5
study_room.breadth = 30.8
# access method inside class
study_room.calculate_area()
Production
Area of Room = 1309.0
Dans l’exemple ci-dessus, nous avons créé une classe nommée Chambre avec:
- Les attributs: longueur et largeur
- Méthode:
calculate_area()
Ici, nous avons créé un objet nommé study_room
du Room
classer. Nous avons ensuite utilisé l’objet pour attribuer des valeurs aux attributs : longueur et largeur.
Notez que nous avons également utilisé l’objet pour appeler la méthode à l’intérieur de la classe,
study_room.calculate_area()
Ici, nous avons utilisé le .
notation pour appeler la méthode. Enfin, l’instruction à l’intérieur de la méthode est exécutée.
Constructeurs Python
Plus tôt, nous avons attribué une valeur par défaut à un attribut de classe,
class Bike:
name = ""
...
# create object
bike1 = Bike()
Cependant, nous pouvons également initialiser des valeurs à l’aide des constructeurs. Par exemple,
class Bike:
# constructor function
def __init__(self, name = ""):
self.name = name
bike1 = Bike()
Ici, __init__()
est la fonction constructeur qui est appelée chaque fois qu’un nouvel objet de cette classe est instancié.
Le constructeur ci-dessus initialise la valeur du Nom attribut. Nous avons utilisé le self.name
se référer à la Nom attribut de la bike1
objet.
Si nous utilisons un constructeur pour initialiser des valeurs à l’intérieur d’une classe, nous devons passer la valeur correspondante lors de la création d’objet de la classe.
bike1 = Bike("Mountain Bike")
Ici, "Mountain Bike"
est passé au Nom paramètre de __init__()
.