slot deposit pulsa slot mahjong slot gacor slot gacor slot gacor resmi slot gacor 2025 slot gacor terpercaya slot gacor 2025 slot gacor hari ini slot gacor hari ini slot gacor hari ini
Python多版本及依赖包管理
17611538698
webmaster@21cto.com

Python多版本及依赖包管理

编程语言 0 2069 2023-06-03 11:29:19

图片

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

pyenv

Linux系统下安装

curl https://pyenv.run | bash

验证是否安装成功:

# pyenv -vpyenv 2.3.11

设置环境变量:

在 ~/.bashrc 中加入如下内容:

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

可以执行如下命令即可立即生效。

source ~/.bashrc

前置依赖包安装:

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

常见安装失败处理方法

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

取消局部设置的python版本

pyenv local --unset
pipenv

Pipenv是官方推荐的的python包管理工具,可以实现项目之间依赖的隔离。

安装pipenv

pip install pipenv

常用命令

pipenv install

该命令功能如下:

  • 若项目目录中虚拟环境未创建且无Pipfile文件,将安装虚拟环境并创建Pipfile文件

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

  • 若项目目录中虚拟环境已创建且有Pipfile文件,将根据Pipfile文件来安装依赖包


安装python包

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

卸载python包

pipenv uninstall xxx

显示虚拟环境安装路径

pipenv --venv

评论