Heim  >  Artikel  >  Backend-Entwicklung  >  Python-Funktion - classmethod()

Python-Funktion - classmethod()

高洛峰
高洛峰Original
2016-10-17 15:31:011422Durchsuche

classmethod(function)

Chinesische Beschreibung:

classmethod wird verwendet, um eine Klassenmethode als Klassenmethode anzugeben. Die Methode einer Klasse, die ohne diesen Parameter angegeben wird, ist eine Instanzmethode Die Verwendungsmethode lautet wie folgt:

class C:
    @classmethod
    def f(cls, arg1, arg2, ...): ...

Die Klassenmethode kann direkt von der Klasse (C.f()) oder der aufgerufenen Instanz (C().f() aufgerufen werden. )).

Version: Neu in Python2.2, neue Funktionen hinzugefügt in Python2.4. Immer noch in Python3 verfügbar.


Englische Beschreibung:

Eine Klassenmethode für eine Funktion zurückgeben.

Eine Klassenmethode empfängt die Klasse als implizites erstes Argument, genau wie Eine Instanzmethode empfängt die Instanz. Um eine Klassenmethode zu deklarieren, verwenden Sie diese Redewendung:

class C:
    @classmethod
    def f(cls, arg1, arg2, ...): ...

 

Die @classmethod-Form ist ein Funktionsdekorator – siehe Beschreibung von Funktionsdefinitionen in Funktionsdefinitionen für Details.


Es kann entweder für die Klasse (z. B. C.f()) oder für eine Instanz (z. B. C()) aufgerufen werden. f()). Die Instanz wird bis auf ihre Klasse ignoriert. Wenn eine Klassenmethode für eine abgeleitete Klasse aufgerufen wird, wird das abgeleitete Klassenobjekt als implizites erstes Argument übergeben 🎜>Klassenmethoden unterscheiden sich von statischen C- oder Java-Methoden. Weitere Informationen zu Klassenmethoden finden Sie unter staticmethod() in diesem Abschnitt Dokumentation zur Standardtyphierarchie in Die Standardtyphierarchie.


Neu in Version 2.2. 2.4: Funktionsdekorator-Syntax hinzugefügt.


Codebeispiel:


Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Vorheriger Artikel:Python-Funktion - cmp(x,y)Nächster Artikel:Python-Funktion - cmp(x,y)