Nein, ein Python-Skript muss keine main()
-Funktion haben. Es folgt nur Konventionen, weil die Funktion, die Sie unter der if __name__ == '__main__':
-Anweisung setzen, die Funktion ist, die wirklich die ganze Arbeit für Ihr Skript erledigt, also ist es die Hauptfunktion. Wenn es tatsächlich einen Funktionsnamen gibt, der das Programm leichter lesbar und übersichtlicher macht, können Sie stattdessen diesen Funktionsnamen verwenden.
In der Tat brauchen Sie nicht einmal brauchen der if __name__ == '__main__':
Teil, aber es ist eine gute Praxis, nicht nur eine Konvention. Es verhindert nur die Funktion main()
oder was auch immer Sie es nennen möchten, wenn Sie die Datei als Modul importieren. Wenn Sie das Skript nicht importieren, brauchen Sie wahrscheinlich nicht, aber es ist immer noch eine gute Praxis. Für mehr darüber und warum es tut, was es tut, siehe What does if __name__ == "__main__": do?
Ja. Dieses bisschen Magie verhindert nur, dass Ihre Hauptfunktion ausgeführt wird, wenn Ihr Skript importiert wird. Dies sagt nur "Wenn ich das Hauptskript bin, rufe diese Funktion auf". –
@MorganThrapp: Beantwortest du die Frage im Titel oder im Körper? Weil sie widersprüchlich sind. ;) –
Hoppla, habe das gar nicht bemerkt. Ich beantwortete die Frage, ob es okay ist, 'main()' umzubenennen. –