背景
笔者习惯于使用conda作为包管理器,但conda的安装有两个让人不爽的地方:
- conda安装包并不会自动创建py文件的关联;
- 不污染PATH环境变量的话,每次使用conda环境中的python操作步骤比较多。
如果使用PyLauncher,但只要做一些配置,就可以比较好的管理本机的多个python环境。
编译py.exe和pyw.exe
注意:
需要安装 Visual Studio 和MSVC
- 从 GitHub-CPython 仓库下载python源代码
- 用 Visual Studio 打开
PCbuild/pylauncher.vcxproj
(其实任意一个工程都行) - 选择Release模式编译
pylauncher
和pywlauncher
两个项目
安装PyLauncher
注意:
- 本文以编写时的最新版本为例,请根据实际情况修改版本号。
- 安装anaconda或minconda时,需要勾选“Register Anaconda3 an the system Python 3.12”
- 将
PCbuild\amd64
下编译好的py.exe和pyw.exe拷贝到C:\Windows目录下
提示,32位版或ARM版Windows的编译输出路径可能不同
- 在以下注册表路径中创建两个字符串
ExecutablePath
和WindowedExecutablePath
值填写为python.exe
和pythonw.exe
的完整路径。
# 安装conda时选择了 “All Users”时的注册表位置
HKEY_LOCAL_MACHINE\SOFTWARE\Python\PythonCore\3.12\InstallPath
# 安装conda时选择了 “Just Me”时的注册表位置
HKEY_CURRENT_USER\SOFTWARE\Python\PythonCore\3.12\InstallPath
# miniconda的常见安装路径
C:\ProgramData\miniconda3\python.exe
C:\ProgramData\miniconda3\pythonw.exe
- 在cmd中输入py,能正常启动python即为配置正确
【可选】设置Python文件关联
以管理员身份运行cmd,输入以下命令关联
assoc .py=Python.File
ftype Python.File=C:\ProgramData\miniconda3\python.exe "%1" %*
设置成功后,双击*.py文件可以直接以base环境的python运行脚本