如何在python3代码中找到python2路径?

时间:2018-12-07 20:14:28

标签: python python-3.x windows python-2.7

我在机器上同时使用python 2和python 3。我利用了python脚本顶部的she-bang表示法,并使用了python 3附带的新python启动器。

我想从Windows上运行的python 3脚本中找到python.exe的python 2路径。

sys.executable和类似命令将不起作用,因为它显示了当前正在运行的python的路径。它不会显示到另一个版本的python的路径。

1 个答案:

答案 0 :(得分:4)

以下内容如何?它利用新的启动器执行python2,并为其提供了单行打印sys.executable的功能,因此它是运行它的python2解释器。

import subprocess

print(str(subprocess.run(['py', '-2', '-c', 'import sys;print(sys.executable)'],
               stdout=subprocess.PIPE).stdout, 'utf-8'))

输出:

$ python -V
Python 3.6.5

$ python get_two.py
C:\Python27\python.exe