Hat jemand wissen, ob ich ein Skript one.py
haben, die die folgende Art und Weise geschrieben:Python - laufen externes Skript
if __name__ == '__main__':
# Do something
Und ich möchte aus einem anderen Skript, dass main
Funktion aufzurufen. Wie soll ich das machen?
ich denke, es so etwas wie sein würde (sagen wir mal diese launcher.py
ist)
# 'one' stands for import from `one.py` module
import one
if __name__ == '__main__':
one.main()
Das einzige Problem ist, dass ich nicht main()
so nennen kann.
Wie soll das gemacht werden?
Das funktioniert, aber es ist nicht der richtige Weg, es zu tun. Der Punkt ist, dass der '__name__ == '__main __' Sentinel überprüft, ob Ihr Programm eigenständig ausgeführt wird. Sicher, Sie können so tun, als ob es das ist, aber Sie sollten nicht - stattdessen sollten Sie die API aufrufen, die sie selbst darstellt! Das heißt, Sie rufen 'a.main()' von 'b 'auf. – katrielalex
Neben dem, was @katrielalex sagt, scheint dies unnötig komplex zu sein und auf den ersten Blick nicht verständlich zu sein. –
Ich bin mit Katrielalex und Felix, das tut was erforderlich ist, aber es ist definitiv nicht der Weg zu gehen. – slezica