pipenv是基于pip的Python包管理工具,和pip的用法非常相似,可以看作是pip的加强版,它的出现解决了旧的pip+virtualenv+reuqirements.txt的工作方式的弊端。具体来说,pipenv聚合了pip、Pipfile和Vritualenv的结合体,它让包安装、包依赖管理和虚拟环境的管理更加方便。之前搭建虚拟环境需要使用virtualenv和virtualenvwrapper,而有了pipenv之后,可以不用使用这两者了。而之前的依赖管理需要导出使用pip freeze -> requirement.txt,一旦依赖发生了改变,就要重新导出。而使用pipenv在创建环境时会自动创建Pipfile和Pipfile.lock,而之后的包依赖发生改变(使用pipenv install \<包名>)时会自动更新这两个依赖管理文件,可以很方便的进行环境和依赖移植。其次pipenv还可以进行测试环境依赖包和正式环境依赖包的区分,

# 安装开发依赖包
pipenv install pytest --dev
​# 安装正式环境依赖包
pipenv install pytest

1.安装pip和Pipenv

如果使用Python 2.7.9以及以上版本或Python 3.4以及以上版本,那么pip已经默认安装。

使用pip --version 检测是否已安装pip

如果没有安装,下载并使用python执行get-pip.py文件

下载pip的安装包get-pip.py,下载地址:https://pip.pypa.io/en/latest/installing.html#id7

安装pipenv

1.ubuntu使用apt安装

sudo apt install software-properties-common python-software-properties
sudo add-apt-repository ppa:pypa/ppa
sudo apt update
sudo apt install pipenv

2.windows使用pip安装

pip install pipenv

3.MacOS使用homebrew或pip安装

# homebrew安装
brew install pipenv
# pip 安装
pip install pipenv

创建并启动虚拟环境

进入项目根目录,执行:

pipenv install

该命令会生成对应的虚拟环境并激活,虚拟环境的名称为项目文件夹名+随机字符串,而生成环境的位置为Windows下为C:\User\Administrator\.virtualenvs\目录下,Linux或macOS会在\~/.local/share/virtualenvs/目录下。如果想要在项目目录下创建虚拟环境,可以设置环境变量PIPENV_VENV_IN_PROJECT,这时名为.venv的虚拟环境文件夹将在项目根目录创建。

创建环境时可以通过--three和--two选项来声明虚拟环境中使用的Python版本,或是使用--python选项指定具体的版本,前提是要保证对应版本的Python已经安装在本机中。

注意:如果当前目录的上级目录已经创建过虚拟环境,则在当前目录无法创建虚拟环境(无法生成Pipfile,当前目录默认使用父级目录的虚拟环境),如果确定需要在当前目录创建虚拟环境,可以运行pipenv --where获取上级目录虚拟环境的名字,根据虚拟环境的名字,确定父级目录的位置,然后删除父级目录下的Pipfile,Pipfile./lock,运行exit退出父级虚拟环境,然后回到子目录,运行pipenv install 创建当前目录的虚拟环境。

在虚拟环境管理依赖

安装flask

pipenv install flask

查看当前依赖

pipenv graph

删除依赖包

pipenv uninstall flask

退出当前虚拟环境

exit

查看虚拟环境python解释器位置

pipenv --py

查看虚拟环境所在位置

pipenv --venv

安装开发环境包

pipenv install flask --dev

移植环境

pipenv sync

0 Comments latest

No comments.