导读:本文主要讲述如何通过 pyenv 来管理不同版本的 python ,以及如何使用 Pipenv 在同一个python版本实现项目之间依赖包的隔离。
pyenv
curl https://pyenv.run | bash
验证是否安装成功:
# pyenv -v
pyenv 2.3.11
设置环境变量:
在 ~/.bashrc 中加入如下内容:
export PYENV_ROOT="$HOME/.pyenv"
export PATH="$PYENV_ROOT/bin:$PATH"
eval "$(pyenv init -)"
可以执行如下命令即可立即生效。
source ~/.bashrc
前置依赖包安装:
pyenv install --list
pyenv local 3.11.1
pyenv global 3.11.1
pyenv versions
前置依赖包安装(已centos为例):
yum install -y zlib zlib-dev sqlite-devel bzip2-devel libffi libffi-devel gcc gcc-c++ ncurses-devel readline-devel
yum swap openssl-devel openssl11-devel
安装固定版本的python
pyenv install 3.11.1
常见安装失败处理方法
ModuleNotFoundError: No module named 'ssl'错误
CPPFLAGS="$(pkg-config --cflags openssl11)" LDFLAGS="$(pkg-config --libs op
enssl11)" pyenv install -v 3.11.1
其他常见安装python失败场景
解决方案可以参考官方wiki:
https://github.com/pyenv/pyenv/wiki/Common-build-problems
pyenv local --unset
pipenv
Pipenv是官方推荐的的python包管理工具,可以实现项目之间依赖的隔离。
pip install pipenv
pipenv install
该命令功能如下:
若项目目录中虚拟环境未创建且无Pipfile文件,将安装虚拟环境并创建Pipfile文件
若项目目录中虚拟环境未创建且有Pipfile文件,将根据Pipfile文件来安装相应python版本和依赖包
若项目目录中虚拟环境已创建且有Pipfile文件,将根据Pipfile文件来安装依赖包
pipenv install xxx # 安装某个python包
# 例:pipenv install requests==2.13.0
pipenv uninstall xxx
pipenv --venv
本文为 @ 场长 创作并授权 21CTO 发布,未经许可,请勿转载。
内容授权事宜请您联系 webmaster@21cto.com或关注 21CTO 公众号。
该文观点仅代表作者本人,21CTO 平台仅提供信息存储空间服务。