我有一个名为
python.exe
的 python 可执行文件和一个启动器 python-launcher.exe
,它在启动 python.exe
之前初步设置环境变量。
如果我跑步:
python-launcher.exe -c "import sys; print(sys.executable)"
我打印了
python.exe
。但问题是我需要它是python-launcher.exe
。
我想也许我可以编写一个修改可执行文件的脚本
import sys; sys.executable="python-launcher.exe"
并且每次启动python时都会调用该脚本?
附注我无法修改或重新编译
python-launcher.exe
,但我有机会在 .ini
配置文件中设置环境变量。
不幸的是,
PYTHONSTARTUP
环境变量不适用于-c
参数。解决方法是设置一个环境变量并覆盖与命令内联的 sys.executable
。
在
.ini
配置中设置环境变量:在配置文件中,设置:
`PYTHON_EXECUTABLE=python-launcher.exe`
使用手动覆盖
sys.executable
内联的命令:
python-launcher.exe -c "import os, sys; sys.executable = os.getenv('PYTHON_EXECUTABLE', sys.executable); print(sys.executable)"