Как получить имя запущенного скрипта Python? - PullRequest
7 голосов
/ 20 сентября 2009

Как узнать имя работающего скрипта Python?

Я попытался os.__file__, но это возвращает имя файла, в котором находится os.

Ответы [ 6 ]

19 голосов
/ 20 сентября 2009

Используйте

thisFile = __file__

Это волшебство!

19 голосов
/ 20 сентября 2009
>> import os
>> import sys
>> print sys.argv[0]

или если вам нужен только скрипт, а не полный путь

>>
>> print os.path.basename(sys.argv[0])
6 голосов
/ 20 сентября 2009

Зависит от того, что вы подразумеваете под «работающим скриптом Python».

__file__ даст вам имя исполняемого файла. Если это модуль, вы получите, откуда он был импортирован, например, blahblah.pyc

sys.argv[0] даст вам имя запускаемого скрипта, даже если он вызывается из модуля, импортированного этим скриптом.

Пожалуйста, посмотрите ответы на предыдущий вопрос по этой теме (см. Комментарий С.Лотта к вашему вопросу).

1 голос
/ 20 сентября 2009

sys.argv[0] должен дать вам имя сценария.

0 голосов
/ 27 июня 2017
import __main__
print __main__.__file__

Это напечатает текущее имя файла, которое работает

0 голосов
/ 20 сентября 2009
sys.path[0]

возвращает путь к скрипту, который запустил интерпретатор Python.

Если вы прочитаете этот скрипт напрямую, он вернет путь к скрипту. Если скрипт был импортирован из другого скрипта, он вернет путь этого скрипта.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...