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

时间:2009-09-20 06:59:54

标签: python

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

我尝试os.__file__,但会返回os所在文件的名称。

6 个答案:

答案 0 :(得分:19)

>> import os
>> import sys
>> print sys.argv[0]

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

>>
>> print os.path.basename(sys.argv[0])

答案 1 :(得分:19)

使用

thisFile = __file__

这很神奇!

答案 2 :(得分:6)

这取决于“正在运行的python脚本”的含义。

__file__将为您提供当前正在执行的文件的名称。如果这是一个模块,你将从它导入的位置,例如blahblah.pyc

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

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

答案 3 :(得分:1)

sys.argv[0]应该为您提供脚本的名称。

答案 4 :(得分:0)

import __main__
print __main__.__file__

这将打印正在运行的当前文件名

答案 5 :(得分:-1)

sys.path[0]

返回启动Python解释器的脚本的路径。

如果您直接阅读此脚本,它将返回脚本的路径。如果脚本是从另一个脚本导入的,则它将返回该脚本的路径。