Ein Shebang ist ein spezieller Kommentar am Anfang eines Skripts, das den Pfad zum Interpreter angibt, der die Datei ausführen soll. Es ermöglicht die direkte Ausführung des Skripts, ohne dass „Python“ vor dem Skriptnamen eingegeben werden muss. Der Shebang ist für Unix-ähnliche Systeme unerlässlich, wird unter Windows jedoch ignoriert, es sei denn, Kompatibilitätsschichten wie WSL werden verwendet. Ein Shebang sollte eingefügt werden, wenn ein Skript eine direkte Ausführung benötigt, aber nicht in Modulen, die nur importiert werden. Zu den Best Practices für Shebangs gehört die Verwendung von „/usr/bin/env“ für Portabilität und die Sicherstellung, dass das Skript ausführbar ist. Der Shebang hat Einschränkungen, z. B. das Ignorieren unter Windows ohne Kompatibilitätsschichten. Ein Shebang muss in der ersten Zeile eines Skripts erscheinen und mit einem Rautezeichen beginnen, gefolgt von einem Ausrufezeichen. Nach dem Ausrufezeichen sollte ein absoluter Pfad zum relevanten Codeinterpreter, wie z. B. Python, angegeben werden. Der Shebang wird nur von Shells erkannt, die auf Unix-ähnlichen Betriebssystemen laufen, einschließlich macOS- und Linux-Distributionen. Es ist nicht notwendig, einen Shebang in ein Python-Modul aufzunehmen, das nur Funktions- und Klassendefinitionen enthält, die zum Importieren aus anderen Modulen gedacht sind.
realpython.com
Real Python: Executing Python Scripts With a Shebang
