Est-il possible de créer des méthodes statiques en Python et de les appeler sans initialiser une classe, comme par exemple : ClassName.StaticMethod ()?

Est-il possible de créer des méthodes statiques en Python et de les appeler sans initialiser une classe, comme par exemple : ClassName.StaticMethod ()?

2 mai 2019 · 1 min. de lecture
quora Quora

Article initialement publié sur Quora

oui, ça se fait à l’aide du décorateur @staticmethod qui sert exactement à ça:

class MyClass:
    @staticmethod
    def staticmethod():
        return 'static method called'

on peut ensuite appeler soit

MyClass().staticmethod(); # crée un objet, puis appelle sa méthode qui est  statique

soit

MyClass.staticmethod(); # appelle directement la méthode statique

les décorateurs, c’est absolument génialement fabuleusement puissant et simple

les décorateurs, ou pourquoi j’aime toujours la programmation - Pourquoi Comment Combien

Dr. Goulu
Auteurs
Dr. Goulu (il/lui)
Ingénieur à la retraite, toujours curieux et voyageur
EPFL MS Informatique 1988, PhD automatique 1994, eMBA Management of Technology

comments powered by Disqus