Classes et objets Python

Classe/Objet Python

Python est un langage de programmation orienté objet.

Presque tout dans Python est un objet, possédant des attributs et des méthodes.

La classe (Class) est similaire au constructeur d'objet ou à un "plan" utilisé pour créer des objets.

Créer une classe

Pour créer une classe, utilisez class Mots-clés :

Instance

Créer une classe nommée MyClass en utilisant l'attribut nommé x :

class MyClass:
  x = 5

Exécuter l'exemple

Création d'objet

Nous pouvons maintenant utiliser la classe nommée myClass pour créer des objets :

Instance

Créer un objet nommé p1 et afficher la valeur de x :

p1 = MyClass()
print(p1.x)

Exécuter l'exemple

Fonction __init__()

L'exemple ci-dessus est la forme la plus simple de la classe et de l'objet, qui n'est pas vraiment utile dans les applications réelles.

Pour comprendre le sens de la classe, nous devons d'abord comprendre les __init__% Fonction.

Toutes les classes ont une fonction nommée __init__() qui s'exécute toujours au démarrage de la classe.

Assigner des valeurs aux attributs de l'objet à l'aide de la fonction __init__() ou effectuer d'autres opérations nécessaires lors de la création de l'objet :

Instance

Créer une classe nommée Personne, utiliser la fonction __init__() pour assigner des valeurs à name et age :

class Person:
  def __init__(self, name, age):
    self.name = name
    self.age = age
p1 = Person("Bill", 63)
print(p1.name)
print(p1.age)

Exécuter l'exemple

Remarque :À chaque fois qu'un nouvel objet est créé à l'aide de la classe,Appel automatique Fonction __init__()

Méthode d'objet

Les objets peuvent également contenir des méthodes. Les méthodes dans un objet sont des fonctions appartenant à cet objet.

Créons une méthode dans la classe Personne :

Instance

Insérer une fonction d'affichage d'un message de bienvenue et l'exécuter sur l'objet p1 :

class Person:
  def __init__(self, name, age):
    self.name = name
    self.age = age
  def myfunc(self):
    print("Hello my name is " + self.name)
p1 = Person("Bill", 63)
p1.myfunc()

Exécuter l'exemple

Avis :La variable self est une référence à l'instance actuelle de la classe, utilisée pour accéder aux variables appartenant à la classe.

Paramètre self

self Le paramètre est une référence à l'instance actuelle de la classe, utilisée pour accéder aux variables appartenant à la classe.

Il n'est pas nécessaire de le nommer self, vous pouvez l'appeler librement, mais il doit être une fonction quelconque de la classePremier paramètre:

Instance

Utilisez les mots-clés mysillyobject et abc à la place de self :

class Person:
  def __init__(mysillyobject, name, age):
    mysillyobject.name = name
    mysillyobject.age = age
  def myfunc(abc):
    print("Hello mon nom est " + abc.name)
p1 = Person("Bill", 63)
p1.myfunc()

Exécuter l'exemple

Modifier les attributs de l'objet

Vous pouvez modifier les attributs de l'objet de cette manière :

Instance

Définir l'âge de p1 à 40 :

p1.age = 40

Exécuter l'exemple

Supprimer les attributs de l'objet

Vous pouvez utiliser del Mot-clé pour supprimer les attributs d'un objet :

Instance

Supprimer l'attribut age de l'objet p1 :

del p1.age

Exécuter l'exemple

Supprimer un objet

Utilisation del Mot-clé pour supprimer un objet :

Instance

Supprimer l'objet p1 :

del p1

Exécuter l'exemple

Directive pass

La définition de la classe ne peut pas être vide, mais si vous avez écrit une déclaration de classe vide pour une raison quelconque, utilisez la directive pass pour éviter les erreurs.

Instance

class Person:
  pass

Exécuter l'exemple