如何从正在运行的脚本中判断正在运行的Python解释器?

dan*_*ast 4 python pyenv

我想在我的脚本中输出运行它的Python解释器的完整路径:

#!/usr/bin/env python

print("{}".format(full_path_of_interpreter_running_this_script)
Run Code Online (Sandbox Code Playgroud)

该脚本位于中PATH,运行方式为:

script.py
Run Code Online (Sandbox Code Playgroud)

我可以那样做吗?怎么样?

注意:执行which pythontype python进行bash操作无济于事,因为我正在使用pyenv,并且pyenv正在执行垫片魔术。

注意:除了识别Python可执行文件之外,我还对识别正在使用的virtualenv感兴趣,并且我认为了解解释器的完整路径将对此有所帮助。

Jea*_*bre 5

这提供了用于运行脚本的命令的完整路径:

import sys
print(sys.executable)
Run Code Online (Sandbox Code Playgroud)