Wie erhält man den Namen eines laufenden Python-Skripts?

7

Wie bekomme ich den Namen eines laufenden Python-Skripts?

Ich habe os.__file__ versucht, aber das gibt den Namen der Datei zurück, in der sich os befindet.

    
tehryan 20.09.2009, 06:59
quelle

6 Antworten

19

Verwenden Sie

%Vor%

Es ist Magie!

    
Chazadanga 20.09.2009 10:01
quelle
17
%Vor%

oder wenn Sie nur das Skript und nicht den vollständigen Pfad möchten

%Vor%     
Michael Foukarakis 20.09.2009 07:04
quelle
6

Es hängt davon ab, was Sie unter "ein laufendes Python-Skript" verstehen.

__file__ gibt Ihnen den Namen der aktuell ausgeführten Datei. Wenn das ein Modul ist, erhalten Sie, wo es aus z. B. importiert wurde. blahblah.pyc

sys.argv[0] gibt Ihnen den Namen des Skripts, das gerade ausgeführt wird, selbst wenn es von einem Modul aufgerufen wird, das dieses Skript importiert hat.

Bitte lesen Sie die Antworten auf die frühere Frage zu diesem Thema (siehe S.Lott's Kommentar zu Ihrer Frage).

    
John Machin 20.09.2009 14:53
quelle
1

sys.argv[0] sollte Ihnen den Namen des Skripts geben.

    
Taylor Leese 20.09.2009 07:04
quelle
0
%Vor%

Dadurch wird der aktuelle Dateiname gedruckt, der ausgeführt wird

    
chitraxi raj 27.06.2017 09:34
quelle
-1
%Vor%

gibt den Pfad des Skripts zurück, mit dem der Python-Interpreter gestartet wurde.

Wenn Sie dieses Skript direkt lesen, wird der Pfad des Skripts zurückgegeben. Wenn das Skript von einem anderen Skript importiert wurde, wird der Pfad dieses Skripts zurückgegeben.

    
Dave 20.09.2009 14:27
quelle

Tags und Links