Classe statique en Python

Hemank Mehtani 30 janvier 2023
  1. Utilisez le décorateur @staticmethod pour créer une classe statique en Python
  2. Utilisez le décorateur @classmethod pour créer une classe statique en Python
  3. Utiliser un fichier de module pour créer une classe statique en Python
Classe statique en Python

Une classe statique est une fonctionnalité pratique en programmation. Une classe statique ne peut pas être héritée et ne peut pas être instanciée. Il n’y a pas de moyen direct de rendre une classe statique. En Python, nous pouvons implémenter une classe statique en rendant ses méthodes et variables statiques.

Dans cet article, nous allons implémenter de telles méthodes.

Utilisez le décorateur @staticmethod pour créer une classe statique en Python

Pour implémenter une classe statique, nous pouvons rendre ses méthodes et variables statiques. Pour cela, on peut utiliser le décorateur @staticmethod pour créer des méthodes dans une classe static. Un décorateur est une fonction spéciale spécifiée avant une fonction et prend la fonction entière comme paramètre.

Par exemple,

class abc(object):
    @staticmethod
    def static_method():
        print("Hi,this tutorial is about static class in python")


abc.static_method()

Production:

Hi,this tutorial is about static class in python

Notez que cette méthode ne fonctionne que sur les versions de Python supérieures à 2.6.

Utilisez le décorateur @classmethod pour créer une classe statique en Python

La @classmethod peut rendre une méthode statique vis-à-vis de la classe et non de son objet. Il présente plusieurs avantages par rapport au décorateur @staticmethod. Il fonctionnera également avec les sous-classes et peut modifier l’état de la classe.

Cependant, cela nécessite qu’un argument obligatoire soit inclus dans la méthode appelée cls.

Voir le code suivant.

class abc(object):
    @classmethod
    def static_method(cls):
        print("Hi,this tutorial is about static class in python")


abc.static_method()

Production:

Hi,this tutorial is about static class in python

Utiliser un fichier de module pour créer une classe statique en Python

En Python, le meilleur moyen d’implémenter une classe statique est probablement de créer un module. Nous pouvons importer un module, et ses fonctions sont accessibles en utilisant le nom du module. Il ne nécessite pas d’instanciation d’objets et ne peut pas être hérité.

Voir l’exemple suivant.

def static_method():
    print("Hi this is the content of the module file")

Le code ci-dessus peut être une simple fonction dans un script Python qui peut être importé en tant que module.

Par exemple, si le nom du script Python ci-dessus est abc.py, nous pouvons faire quelque chose comme indiqué ci-dessous.

import abc

abc.static_method()

Production:

Hi,this tutorial is about static class in python

Article connexe - Python Class