我正在尝试获取当前正在运行的Python脚本的名称。
我有一个名为foo.py的脚本,我想这样做,以便获得脚本名称:
print(Scriptname)
我正在尝试获取当前正在运行的Python脚本的名称。
我有一个名为foo.py的脚本,我想这样做,以便获得脚本名称:
print(Scriptname)
当前回答
试试这个:
print __file__
其他回答
对于现代Python版本(3.4+),Path(__file__).name应该更习惯。同时,路径(__file__)。Stem提供了不带.py扩展名的脚本名称。
如果你在基类中获取脚本路径,使用此代码,子类将正确获取脚本路径。
sys.modules[self.__module__].__file__
你可以在不导入操作系统或其他库的情况下做到这一点。
如果你想获取当前python脚本的路径,使用:__file__
如果你只想得到没有.py扩展名的文件名,使用这个:
__file__.rsplit("/", 1)[1].split('.')[0]
我们可以尝试这样做,以获得当前的脚本名称没有扩展名。
import os
script_name = os.path.splitext(os.path.basename(__file__))[0]
import sys
print(sys.argv[0])
这将为python打印foo.py,为python打印dir/foo.py,等等。它是python的第一个参数。(注意py2exe之后是foo.exe。)