[Python] Vor dem Unterstrich (Unterstrich) Was sind die beiden Funktionen?

Manchmal stehen vor der Funktion in der Klasse zwei Unterstriche

    def __hogehoge():
        print('Hello.')

Ich wusste nicht was es bedeutete, also ein Memorandum Fazit: Kann nur innerhalb dieser Klasse aufgerufen werden

Versuche zu üben

Lass es uns tatsächlich versuchen ~ Bereiten Sie das folgende Beispiel vor

train.py


class Hoge:
    def __init__(self):
        print('this is init function.')
        
    def public():
        print('this is public function.')
    
    def __private():
        print('this is private function.')

Wechseln Sie in das Verzeichnis, in dem sich diese Datei in [Terminal] befindet, und führen Sie sie wie folgt aus.

Ausführung der Hoge-Klasse

__init__ wird immer aufgerufen, wenn Sie eine Klasse ausführen

$python
>>> from train import Hoge 
>>> Hoge()
this is init function.

Ausführung der öffentlichen Funktion

Geben Sie Folgendes in die Fortsetzung des Terminals ein

>>> Hoge.public()
this is public function.

Funktionen, an die nichts angehängt ist, können problemlos aufgerufen werden

Ausführung der privaten Funktion

Geben Sie Folgendes in die Fortsetzung des Terminals ein

>>> Hoge.__private()
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
AttributeError: type object 'Hoge' has no attribute '__private'

Externer Anruffehler

Nachtrag: 19/12/4 Ich habe einen Kommentar erhalten. Wenn Sie es wirklich aufrufen möchten, können Sie es aufrufen, indem Sie `` `Foo._Foo__a``` eingeben! Danke für die Information.

Recommended Posts

[Python] Vor dem Unterstrich (Unterstrich) Was sind die beiden Funktionen?
Wofür ist der Python-Unterstrich (_)?
Nicht überraschend bekannt! ?? Was ist mit den eingebauten Funktionsargumenten? Aus welcher Schule kommst du? [Python]
[Python] Was ist @? (Über Dekorateure)
[Python] Was sind @classmethod und Dekorateure?
[Python] Was ist der sortierte Schlüssel?
Python-Funktionen
Python Underbar Das ist was
Was ist "Mahjong" in der Python-Bibliothek? ??
Python open und io.open sind gleich
Der Inhalt des Python-Tutorials (Kapitel 5) ist in einem Aufzählungszeichen zusammengefasst.
Wann wirken sich Python-Funktionen auf die Argumente des Aufrufers aus?
Der Inhalt des Python-Tutorials (Kapitel 4) ist in einem Aufzählungszeichen zusammengefasst.
Der Inhalt des Python-Tutorials (Kapitel 2) ist in einem Aufzählungszeichen zusammengefasst.
Was ist im Docker Python-Image pfeifend?
Der Inhalt des Python-Tutorials (Kapitel 8) ist in einem Aufzählungszeichen zusammengefasst.
Der Inhalt des Python-Tutorials (Kapitel 1) ist in einem Aufzählungszeichen zusammengefasst.
[Minecraft] Was sind die wichtigsten Überlebensgegenstände?
Der Inhalt des Python-Tutorials (Kapitel 10) ist in einem Aufzählungszeichen zusammengefasst.
Was vergleichst du mit Python und ==?
[Hinweis] Über die Rolle des Unterstrichs "_" in Python
Der Inhalt des Python-Tutorials (Kapitel 6) ist in einem Aufzählungszeichen zusammengefasst.
Der Inhalt des Python-Tutorials (Kapitel 3) ist in einem Aufzählungszeichen zusammengefasst.
Was sind Python Taples und * Args?
Was verwenden Sie beim Testen mit Python?
Python-Unterstrichvariable
Was ist Python?
# Python-Grundlagen (Funktionen)
[Anfänger] Python-Funktionen
Python Einfach zu bedienende Funktionen
Python-Grundlagen: Funktionen
Was ist Python?
Was ich zum ersten Mal in Python bekommen habe
Das von Python berechnete VIF und das von Excel berechnete VIF sind unterschiedlich.
Feature Engineering für Finanzprognosen: Wie hoch ist der Feature-Betrag in der Finanzprognose?
Was bedeutet das letzte () in einer Funktion in Python?
Ich habe versucht zusammenzufassen, was der Python-starke Mann in der professionellen Nachbarschaft des Wettbewerbs tut
Welche Umgebung sollten Leute, die Python zum ersten Mal lernen, bauen?