Frage

__author__="Sergio.Tapia"
__date__ ="$18-10-2010 12:03:29 PM$"

if __name__ == "__main__":
    print("Hello")
    print(__author__)

Wo kommt es __main__ und __name__ bekommen?

Danke für die Hilfe

War es hilfreich?

Lösung

Die __name__ Variable wird von der Laufzeit zur Verfügung gestellt. Es ist der Name des aktuellen Moduls, der Name, unter dem sie eingeführt wurden. "__main__" ist eine Zeichenfolge. Es ist nichts Besonderes, es ist nur ein String. Es kommt auch der Name des Hauptskript zu sein, wenn es ausgeführt wird.

Der if __name__ == "__main__": Mechanismus ist der gemeinsame Weg, etwas zu tun, wenn eine Py-Datei direkt ausgeführt wird, aber nicht, wenn es als ein Modul importiert wird.

Andere Tipps

Python-Module kann auch als Stand-alone-Skripte ausgeführt werden. Als solcher Code innerhalb des if __name__ == "__main__": Block wird nur ausgeführt, wenn das Modul als „main“ Datei ausgeführt wird.

Beispiel :

#foo.py
def msg():
    print("bar")

if __name__ == "__main__":
    msg()

Ausführen dieses Modul Ausgabe

$ python foo.py
bar

Dabei gilt als Import gibt er nichts.

>>> import foo
>>> foo.msg()
bar

Referenz

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top