Grundlegende Geschichte der Vererbung in Python (für Anfänger)

Es ist eine grundlegende Geschichte, weil mein Bekannter stolperte.

Einführung

Angenommen, Sie definieren die folgende Klassenmethode in Python:

python


class Parent(object):
    name = "Parent"

    @classmethod
    def get_name(cls):
        return cls.name


class Child(Parent):
    name = "Child"

Was wird übrigens ausgegeben, wenn zu diesem Zeitpunkt von Child aufgerufen wird?

python


In : Child.get_name()
OUT: "Child"

Ein kleiner Kommentar

Grundsätzlich bindet das erste in class definierte Argument die aufgerufene Instanz oder die Klasse selbst. Selbst wenn es geerbt wird, wird daher die Klasse am geerbten Ziel eingegeben. So ist es zum Beispiel in Ordnung, wenn Sie keine so seltsame Definition vornehmen.

python


class Child(Parent):
    name = "Child"
    get_name = Parent.get_name

In dieser Hinsicht hat die Methode im Wesentlichen den Kontext "wo sie hingehört". In diesem Fall wird die Methode also entsprechend dem Kontext des übergeordneten Referrers ausgeführt, unabhängig davon, um welche Klasse es sich handelt.

Recommended Posts

Grundlegende Geschichte der Vererbung in Python (für Anfänger)
Grundlegende Python-Grammatik für Anfänger
[Für Anfänger] Lernen Sie in 5 Stunden kostenlos die grundlegende Python-Grammatik!
Führen Sie unittest in Python aus (für Anfänger)
[Python] Protokoll des Studientreffens für Anfänger (7/15)
Zusammenfassung verschiedener for-Anweisungen in Python
Die Geschichte, dass die Lernkosten von Python niedrig sind
Grundlegende Sortierung in Python
Python Lehrbuch für Anfänger
Bildverarbeitung? Die Geschichte, Python für zu starten
Versuchen Sie, RPN mit Python zu berechnen (für Anfänger)
Einfaches Verständnis von Python für & Arrays (für Super-Anfänger)
Die Geschichte des Lesens von HSPICE-Daten in Python
Grundkenntnisse in Python
OpenCV für Python-Anfänger
[Einführung für Anfänger] Umgang mit MySQL mit Python
Datenanalyse in Python Zusammenfassung der Quellen, die Anfänger zuerst betrachten sollten
Grundlegende Datenrahmenoperationen, die von Anfängern in einer Woche Python-Lernen geschrieben wurden
Janken Poi in Python für Anfänger (Antworten und Erklärungen)
[Für Anfänger] Wie man den Befehl say mit Python benutzt!
Zusammenfassung der Vorverarbeitungsmethoden für Python-Anfänger (Pandas-Datenrahmen)
Die Geschichte von FileNotFound im Python open () -Modus = 'w'
Python-Übung für Anfänger # 1 [Grundlegende Datentypen / If-Anweisungen]
Mit Python erlerntes Refactoring (Basic)
Lernablauf für Python-Anfänger
Objektäquivalenzbeurteilung in Python
Techniken zum Sortieren in Python
Python3-Umgebungskonstruktion (für Anfänger)
Python #Funktion 2 für Super-Anfänger
100 Pandas klopfen für Python-Anfänger
Python #Funktion 1 für Super-Anfänger
Grundlegende Verwendung von Python-F-String
Python #Liste für Super-Anfänger
Implementierung der schnellen Sortierung in Python
~ Tipps für Python-Anfänger mit Liebe von Pythonista ③ ~
Grundlegende Zusammenfassung der Datenoperationen in Python Pandas - Zweite Hälfte: Datenaggregation
[Für Anfänger] Grundlagen von Python erklärt durch Java Gold Teil 2
Überprüfen Sie die Funktionsweise von Python für .NET in jeder Umgebung
[Hinweis] Liste der grundlegenden Befehle zum Erstellen einer Python / Conda-Umgebung
■ Kaggle-Übung für Anfänger - Einführung von Python - von Google Colaboratory
Ein Memo, dass ich eine Grundfunktion in Python mit Wiederholung geschrieben habe
[Python] Die größten Schwächen und Nachteile von Google Colaboratory [Für Anfänger]
[Für Anfänger] Grundlagen von Python erklärt durch Java Gold Teil 1
[Für Anfänger von Wettkampfprofis] Drei Eingabemethoden, die Sie beim Starten der Wettkampfprogrammierung mit Python beachten sollten
Die Geschichte von Python und die Geschichte von NaN
Suchen Sie mit Python nach externen Befehlen
Python-Übungen für Anfänger # 2 [für Anweisung / while-Anweisung]
[Hikari-Python] Kapitel 09-03 Klasse (Vererbung)
Die Geschichte der Teilnahme an AtCoder
Scraping mit Selen in Python (Basic)
Python für Super-Anfänger Super-Anfänger Python # Wörterbuch Typ 1
Zeitdelta in Python 2.7-Serie teilen
MySQL-automatische Escape-Funktion von Parametern in Python
Umgang mit JSON-Dateien in Python
[Python] Grundkenntnisse in AtCoder
Implementierung eines Lebensspiels in Python
Python #index für Super-Anfänger, Slices
<Für Anfänger> Python-Bibliothek <Für maschinelles Lernen>
Die Geschichte des "Lochs" in der Akte