(后续测试似乎有问题,此方法可能无法正常使用)
初学Python的时候,对我来说最大的问题就是环境的管理,各种各样项目的各种各样的库堆在一起,别人写好的东西到我这里就跑不起来。
后来选择语言时总是因为想到项目部署时,难说能把依赖库完整装好而放弃Python。
后来不得不用Python了,也就不得不把Python环境弄明白了。
可能是我不怎么写Python的原因,用Conda什么的总感觉不舒服,我更想手动管理环境,把环境放在项目文件夹里,这样无论是部署还是什么都会很方便。
此处给出一种方法,方便在创建项目时能得到一个干干净净的环境,又没什么学习成本。
下载一个干干净净的Python环境
去Python官网>下载>Windows,这里能够看到所有的Python版本,这里分了左右两列,左边是
Stable Releases稳定版,右边是Pre-releases测试版,只考虑左边的版本。
此处Ctrl+F搜索需要的Python版本(并非每个都有二进制文件,如果没有就继续往下找)。
在找到后,选择下载 Windows embeddable package 。
这样会下载到一个最精简、最干净的Python。
解压到需要的地方。
但还没完,这样太精简了。
安装pip
接下来要装一个包管理器。
下载 get-pip.py (你可能要右键这个链接另存为),然后用 刚才安装的Python 执行。
(将get-pip.py拖放给python.exe)
此处需要确保网络通畅。(实测开着科学上网似乎反而不行,等等吧~)
使用
到此,就得到了一个干净但又完整无缺的Python了。优雅
这个Python环境是用于项目的局部Python,当然是无法直接使用全局的python、pip 命令使用的,pip安装的其他包如果有提供命令也是不能直接使用的。(直接使用这些命令将会用全局Python环境的)
使用时需要明确指定Python。
例如,对于这个样子的项目结构:
/
project/
main.py
start.bat
embed-python/
Lib/
Scripts/
python.exe
可以像这个样子写一个start.bat脚本辅助项目启动:
../embed-python/python.exe main.py这样部署或者迁移时直接把根目录迁移了就可以啦
如需使用pip等命令,用下面的写法代替。
假设当前目录在上述/ ,指定python,让Python去找自己的模块的命令: ./embed-python/python.exe -m pip