Introduction
En Python, une méthode privée est une méthode qui n’est pas destinée à être utilisée en dehors de la classe dans laquelle elle est définie. Ces méthodes sont désignées par un préfixe double trait de soulignement (__) avant leur nom et ne sont accessibles que dans la classe où elles sont définies. Dans cet article, nous allons aborder le concept de méthodes privées en Python, leurs avantages et inconvénients, et comment les utiliser avec des exemples.
algorithme de tri par fusion
Qu’est-ce qu’une méthode privée en Python ?
Une méthode privée est une méthode qui n’est pas destinée à être utilisée en dehors de la classe dans laquelle elle est définie. Ces méthodes sont utilisées pour implémenter des fonctionnalités internes au sein de la classe. Ceux-ci ne sont pas destinés à être utilisés par du code externe. En Python, les méthodes privées sont désignées par un préfixe double trait de soulignement avant leur nom.
Exemple
__method_name
Comment définir une méthode privée en Python ?
Lorsque le programmeur souhaite définir une méthode privée en Python, il doit alors ajouter un préfixe double trait de soulignement avant le nom de la méthode. Voici un exemple:
Programme 1 :
class MyClass: def __init__(self): self.__private_method() def __private_method(self): print('This is a private method.') # Instantiate, the class my_obj = MyClass()
Sortir:
Explication:
Dans l'exemple ci-dessus, nous avons défini une classe appelée MyClass. Il possède une méthode privée appelée __private_method. Cette méthode est appelée depuis le constructeur de classe (__init__) en utilisant self.__private_method(). Étant donné que la méthode a un préfixe à double trait de soulignement, elle est privée et n'est pas accessible en dehors de la classe.
Programme 2 :
class BankAccount: def __init__(self, account_number, balance): self.__account_number = account_number self.__balance = balance def deposit(self, amount): self.__balance += amount def withdraw(self, amount): if self.__balance >= amount: self.__balance -= amount else: print('Insufficient funds') def __display_balance(self): print('Account Balance:', self.__balance) def statement(self): print('Account Number:', self.__account_number) self.__display_balance() # create a BankAccount object my_account = BankAccount('123456789', 1000) # make some transactions my_account.deposit(500) my_account.withdraw(200) # print a statement my_account.statement()
Sortir:
Explication:
Le code fourni définit une classe BankAccount avec des méthodes de dépôt et de retrait de fonds, d'affichage du solde du compte et d'impression d'un relevé de compte. Une instance de cette classe est ensuite créée et certaines transactions y sont effectuées, suivies de l'impression d'une instruction.
Avantages des méthodes privées en Python
Inconvénients des méthodes privées en Python
Conclusion
Les méthodes privées en Python sont une fonctionnalité utile qui peut aider à réaliser l'encapsulation et à améliorer la maintenabilité du code. Bien qu’elles présentent certains inconvénients, les avantages de l’utilisation de méthodes privées en Python l’emportent sur les inconvénients.