Ich dachte, ich schreibe Python. "Welche der Klassenvariablen und \ _ \ _ init \ _ \ _ wird zuerst ausgeführt ???" Ich grabe nicht tief. Es ist eine kleine Geschichte. Es ist eine Verschwendung, bis zum Ende zu lesen, also schreibe ich zuerst das Ergebnis.
Klassenvariablen werden zuerst verarbeitet, gefolgt von \ _ \ _ init \ _ \ _.
Schreiben Sie print () in die Klassenvariable bzw. \ _ \ _ init \ _ \ _. Überprüfen Sie anhand des Ausführungsergebnisses, welches zuerst angezeigt wird.
test.py
class main:
s = 'Klassenvariablen wurden definiert.'
print(s)
def __init__(self):
s = '__init__Wurde ausgeführt.'
print(s)
if __name__ == '__main__':
main()
Ergebnis
$ python test.py
Klassenvariablen wurden definiert.
__init__Wurde ausgeführt.
Die Klassenvariable wird zuerst ausgeführt, und dann wird \ _ \ _ init \ _ \ _ ausgeführt. Definieren wir nun eine Klassenvariable unter \ _ \ _ init \ _ \ _. Der Code wird schmutzig, aber es ist eine Überprüfung ...
test.py
class main:
def __init__(self):
s = '__init__Wurde ausgeführt.'
print(s)
s = 'Klassenvariablen wurden definiert.'
print(s)
if __name__ == '__main__':
main()
Ergebnis
$ python test.py
Klassenvariablen wurden definiert.
__init__Wurde ausgeführt.
Das Ergebnis hat sich nicht geändert. Es stellt sich heraus, dass alles, was Sie oben schreiben, immer von der Klassenvariablen ausgeführt wird. Das ist alles.
In den Kommentaren
Versuchen Sie es auszuführen, ohne main () aufzurufen. Es wird ein interessantes Ergebnis.
Als ich es versuchte, wurde nur der Klassenvariablenteil ausgeführt. In den Kommentaren finden Sie eine leicht verständliche Erklärung. Sie können sehen, dass Sie auf die Verarbeitung in der Klasse und der Methode verweisen können, ohne die Klasse auszuführen. Ich kann für den Rest meines Lebens nicht aus einem Anfänger herauskommen. Aber es macht Spaß.
Recommended Posts