Seite 1 von 1
if __name__ == '__main__': main()
Verfasst: Freitag 26. Dezember 2008, 16:43
von alfonsospringer
Hi!
immer wieder sehe ich am Anfang von Python Programmen folgende Codezeile:
Ich komme nicht dahinter, was sie bewirkt und wofür sie gut ist. Sagt mir's jemand?
Verfasst: Freitag 26. Dezember 2008, 16:49
von bremer
Verfasst: Freitag 26. Dezember 2008, 16:52
von alfonsospringer
Hasst recht, danke.
Frohe Weihnachten & Guten Rutsch
Verfasst: Freitag 26. Dezember 2008, 16:52
von Nocta
Wenn das Programm importiert wird, ist __name__ gleich dem Dateinamen.
Wenn das Programm aber selbst ausgeführt wird, ist __name__ gleich __main__.
Die Überprüfung, if __name__ == __main__ heißt also eigentlich nur: Wenn dieses Programm das Hauptprogramm ist, welches aufgerufen wurde - Also nicht importiert wurde.
Das soll verhindern, dass Programmcode beim Importieren der Datei ausgeführt wird.
Sonst würde man jedes mal, wenn man das Programm importiert und eigentlich nur die Funktionen/Klassen, die in dem Programm enthalten sind, importieren will, auch die print-Anweisungen und sonstiges ausführen, was sonst noch so in dem Programm gemacht wird.
Edit: Fehler nr 2: Auf 1000 mal beantwortete Fragen nochmals neu antworten

Aber egal, wir haben Weihnachtszeit und ich wollte auch mal wieder was posten.
Verfasst: Freitag 26. Dezember 2008, 16:57
von alfonsospringer
Danke für das schöne Geschenk!
Verfasst: Freitag 26. Dezember 2008, 17:11
von cofi
Nocta hat geschrieben:Edit: Fehler nr 2: Auf 1000 mal beantwortete Fragen nochmals neu antworten

Aber egal, wir haben Weihnachtszeit und ich wollte auch mal wieder was posten.
Ach so schlimm ist das nicht

Der Einzige der damit ein Problem hast bist du, auch ist das schöner wenn mans bei Google trifft und gleich die Antwort findet und nich weiter klicken muss

Verfasst: Freitag 26. Dezember 2008, 17:18
von Nocta
Naja, so schlimm fand ich's dann auch wieder nicht

Jetzt hab ich mir fast 'nen Platz in der Bibel verdient ... Schade, dass ich 2008 Jahre + 2 Tage zu spät komme.
Verfasst: Freitag 26. Dezember 2008, 20:59
von alfonsospringer
Man weiss ja nie - vielleicht spricht sich dein Ruf als barmherziger Weisheitsstifter ja rum und du wirst heilig gesprochen
