pyenv + poetry 进行多版本python项目管理方案
摘要
- 1、pyenv 管理不同版本的python
- 2、poetry根据不同的pyenv创建的python版本进行项目环境.venv的创建
1.使用pyenv管理不同版本的python
对于pyenv的安装,pyenv官方github提供详细的教程,本文不再涉及,windows系统需要安装的话,可以使用pyenv-win,在github上也有仓库提供。
- 1 查看可安装的python版本及已经安装的python版本
1 | pyenv versions # 显示已经安装的所有 Python 版本 |
- 2.安装卸载python版本
1 | pyenv install <version> # 安装指定版本的 Python,例如 pyenv install 3.10.7 |
- 3.设置python版本
1 | pyenv global <version> # 设置全局(默认)Python 版本 |
以上就是基础常见的pyenv命令,pyenv作为python版本管理工具的主要作用就是管理不同版本的python,在不同的项目中,我们可能会用到不同的python版本,但是本地下载多个python版本进行切换管理非常麻烦,当然也可以使用conda进行隔离管理,但是conda比较臃肿,在开发项目中可能不是很方便,同时存在管理不同包版本依赖功能不完善的情况,可见博客Poetry基本用法教程中对此有详细的陈述。
2.poetry根据不同的pyenv创建的python版本进行项目环境.venv的创建
在第一步中,我们设置好python版本后,就可以通过poetry来创建相应的venv虚拟环境,这里建议将.venv直接设置在项目内部,建议将virtualenvs.in-project设置成true即可。
- 1.根据系统关联的python版本创建venv环境
1 | poetry env use python版本 |
这样就可以成功创建对应python版本的venv环境了。
- 2.根据toml文件更新lock文件 并 安装相关配置环境
1 | poetry lock # then |
- 3.激活虚拟环境
1 | poetry env use python版本号 # 切换 Python 版本/解释器 |
总结
poetry + pyenv 的项目环境管理方式,不仅方便并且管理起来轻松,在实际开发场景中,使用得更多,并且也利用了poetry管理可复现,方便项目迭代的优点。
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来源 思想是一个锐化的过程!
评论