如何获取正在运行的Python脚本的名称?

teh*_*yan 9 python

如何获取正在运行的Python脚本的名称?

我试过os.__file__但是返回了os所在文件的名称.

Mic*_*kis 20

>> import os
>> import sys
>> print sys.argv[0]
Run Code Online (Sandbox Code Playgroud)

或者如果你只是想要脚本而不是完整路径

>>
>> print os.path.basename(sys.argv[0])
Run Code Online (Sandbox Code Playgroud)


Cha*_*hie 20

使用

thisFile = __file__
Run Code Online (Sandbox Code Playgroud)

这是魔法!


Joh*_*hin 8

这取决于"运行的python脚本"的含义.

__file__将为您提供当前正在执行的文件的名称.如果那是一个模块,那么你将获得从例如blahblah.pyc导入的模块

sys.argv[0] 将为您提供正在运行的脚本的名称,即使从该脚本导入的模块调用也是如此.

请查看有关此主题的早期问题的答案(请参阅S.Lott对您的问题的评论).


Tay*_*ese 1

sys.argv[0]应该给你脚本的名称。