if name == „main“: Es kann als Eingang des Python-Programms angesehen werden, genau wie die main()-Methode in Java, ist aber nicht ganz korrekt.
Tatsächlich werden Python-Programme Zeile für Zeile von oben nach unten ausgeführt. In der .py-Datei wird der Code mit Ausnahme der nach def definierten Funktionen als Inhalt der „Haupt“-Methode betrachtet und von oben nach unten ausgeführt. Wenn Sie nur ein großartiges „Hallo Welt“ und keine Funktion schreiben möchten, können Sie einfach drucken („Hallo Welt“). Dies ist ein „Programm“ und erfordert kein sogenanntes „Hauptprogramm“. " Methodeneintrag. Wenn Sie die Funktion testen, müssen Sie natürlich if name == „main“ in die .py-Datei schreiben und dann die Funktion aufrufen.
Zum Beispiel die folgende hello.py-Datei:
print("first") def sayHello(): str = "hello" print(str); print(__name__+'from hello.sayhello()') if __name__ == "__main__": print ('This is main of module "hello.py"') sayHello() print(__name__+'from hello.main')
Laufergebnis:
first This is main of module "hello.py" hello __main__ from hello.sayhello() __main__ from hello.main
Verstehen Sie, was ich meine? Führen Sie zuerst die erste Druckzeile aus und führen Sie dann die Dinge im „Eintrag“ aus.
Apropos, was bedeutet der Satz, wenn name == „main“?
name__ ist eigentlich ein integriertes Attribut, das die Methode zum Aufrufen der aktuellen py-Datei angibt. Wenn das obige Beispiel ausgeführt wird, ist der Wert unabhängig davon, wo sich das Attribut __name__ im gesamten Programm befindet, __main. Wenn diese hello.py-Datei als Modul in eine andere .py-Datei importiert wird (d. h. import), z. B. world .py , und Sie führen world.py aus. Das Attribut __name__ in hello.py wird nicht ausgeführt, da die Beurteilung der if-Anweisung fehlschlägt . Eine main()-Methode.
Ich habe erwähnt, dass Python Zeile für Zeile ausgeführt wird. Wenn es also „Import Hello“ liest, wird auch „hello.py“ ausgeführt. Führen Sie beispielsweise die folgende world.py-Datei aus:
import hello#上一个例子的hello.py if __name__ == "__main__": print ('This is main of module "world.py"') hello.sayHello() print(__name__)
Ausführungsergebnis:
first This is main of module "world.py" hello hellofrom hello.sayhello() main
Sie können sehen hallo. Die erste Zeile von print(‘first’) in py wird direkt ausgeführt, und der __name__ in hello.py gibt auch hello aus, und der Name in world.py gibt __main__
ausDas obige ist der detaillierte Inhalt vonSo verwenden Sie die Hauptmethode in Python. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!