Python多版本及依赖包管理:pyenv+pipenv

2023-06-0422:24:21后端程序开发Comments1,369 views字数 1176阅读模式

Python多版本及依赖包管理:pyenv+pipenv文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/44420.html

导读:本文主要讲述如何通过 pyenv 来管理不同版本的 python ,以及如何使用 Pipenv 在同一个python版本实现项目之间依赖包的隔离。

pyenv文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/44420.html

Linux系统下安装

curl https://pyenv.run | bash

验证是否安装成功:文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/44420.html

# pyenv -vpyenv 2.3.11

设置环境变量:文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/44420.html

在 ~/.bashrc 中加入如下内容:文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/44420.html

export PYENV_ROOT="$HOME/.pyenv"export PATH="$PYENV_ROOT/bin:$PATH"eval "$(pyenv init -)"

可以执行如下命令即可立即生效。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/44420.html

source ~/.bashrc

前置依赖包安装:文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/44420.html

Pyenv的常见用法

查看可安装的python版本

pyenv install --list

当前目录切换python版本

pyenv local 3.11.1

全局切换python版本

pyenv global 3.11.1

查看当前使用的python版本

pyenv versions

安装某个版本的python

  • 前置依赖包安装(已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

常见安装失败处理方法文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/44420.html

ModuleNotFoundError: No module named 'ssl'错误文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/44420.html

CPPFLAGS="$(pkg-config --cflags openssl11)" LDFLAGS="$(pkg-config --libs op
enssl11)" pyenv install -v

其他常见安装python失败场景文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/44420.html

解决方案可以参考官方wiki:文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/44420.html

取消局部设置的python版本

pyenv local --unset
pipenv

Pipenv是官方推荐的的python包管理工具,可以实现项目之间依赖的隔离。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/44420.html

安装pipenv

pip install pipenv

常用命令

pipenv install

该命令功能如下:文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/44420.html

  • 若项目目录中虚拟环境未创建且无Pipfile文件,将安装虚拟环境并创建Pipfile文件
  • 若项目目录中虚拟环境未创建且有Pipfile文件,将根据Pipfile文件来安装相应python版本和依赖包
  • 若项目目录中虚拟环境已创建且有Pipfile文件,将根据Pipfile文件来安装依赖包

安装python包

pipenv install xxx  # 安装某个python包# 例:pipenv install requests==

卸载python包

pipenv uninstall xxx

显示虚拟环境安装路径

pipenv --venv
作者:大雄
文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/44420.html
  • 本站内容整理自互联网,仅提供信息存储空间服务,以方便学习之用。如对文章、图片、字体等版权有疑问,请在下方留言,管理员看到后,将第一时间进行处理。
  • 转载请务必保留本文链接:https://www.cainiaoxueyuan.com/bc/44420.html

Comment

匿名网友 填写信息

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen:

确定