Variables de classe statiques en Python

Lakshay Kapoor 30 janvier 2023
  1. Utilisez la staticmethod() pour définir des variables statiques en Python
  2. Utilisez la @staticmethod pour définir des variables statiques en Python
Variables de classe statiques en Python

Une variable statique en Python est une variable déclarée dans une classe définie mais pas dans une méthode. Cette variable peut être appelée via la classe à l’intérieur de laquelle elle est définie mais pas directement. Une variable statique est également appelée variable de classe. Ces variables sont confinées à la classe, elles ne peuvent donc pas changer l’état d’un objet.

Ce tutoriel montrera différentes manières de définir des variables statiques en Python.

Utilisez la staticmethod() pour définir des variables statiques en Python

La staticmethod() en Python est une fonction intégrée utilisée pour renvoyer une variable statique pour une fonction donnée.

Cette méthode est maintenant considérée comme une ancienne façon de définir une variable statique en Python.

Exemple:

class StaticVar:
    def random(text):

        print(text)
        print("This class will print random text.")


StaticVar.random = staticmethod(StaticVar.random)

StaticVar.random("This is a random class.")

Production:

This is a random class.
This class will print random text.

Ici, tout d’abord, nous créons une classe appelée StaticVar. Dans le programme, nous déclarons une variable appelée random comme variable statique en dehors de la classe en utilisant la fonction staticmethod(). Par cela, nous pouvons appeler le random() directement en utilisant la classe StaticVar.

Utilisez la @staticmethod pour définir des variables statiques en Python

@staticmethod est un moyen moderne et le plus utilisé pour définir une variable statique. La @staticmethod est un décorateur intégré à Python. Un décorateur est un modèle conçu en Python utilisé pour créer une nouvelle fonctionnalité sur un objet déjà existant sans modifier sa structure initiale. Ainsi, le décorateur @staticmethod est utilisé pour définir une variable statique à l’intérieur d’une classe en Python.

Exemple:

class StaticVar:
    @staticmethod
    def random(text):
        # show custom message
        print(text)
        print("This class will print random text.")


StaticVar.random("This is a random class.")

Production:

This is a random class.
This class will print random text.

Notez que le décorateur @staticmethod est défini avant de définir la variable statique random. De ce fait, nous pouvons facilement appeler la variable random à la fin via la classe StaticVar.

Notez également que, dans les deux méthodes, nous n’utilisons pas l’argument self, qui permet d’accéder aux attributs et méthodes de la fonction lors de la définition de la variable random. C’est parce que les variables statiques n’opèrent jamais à travers des objets.

Lakshay Kapoor avatar Lakshay Kapoor avatar

Lakshay Kapoor is a final year B.Tech Computer Science student at Amity University Noida. He is familiar with programming languages and their real-world applications (Python/R/C++). Deeply interested in the area of Data Sciences and Machine Learning.

LinkedIn

Article connexe - Python Class