自学内容网 自学内容网

使用pipenv来管理Python项目的依赖

一个Python项目,依赖的模块甚至Python解释器版本,总是存在依赖关系。虽然有virtualenv或者venv模块来创建虚拟的Python环境,但是不同的项目要创建不同的环境,仍然不是很方便。

还好,requests的作者,写了pipenv这个“更人性化”的工具。

使用pipenv来管理项目的虚拟环境,非常简单。

初始化

我们可以在一个项目里面,执行

pipenv --python 3.10

来初始化一个项目的Pipfile。

而且贴心的是,如果这个项目里面有requirements.txt,它还会自动导入requirements.txt里面的依赖到Pipfile。

初始化完成以后,就可以在Pipfile来加入项目依赖的模块。

Pipfile

Pipfile文件是yml格式,非常简单易懂。

刚初始化完成以后如下:

[[source]]
url = "https://pypi.org/simple"
verify_ssl = true
name = "pypi"

[packages]

[dev-packages]

[requires]
python_version = "3.9"

其中,[[source]]里的url可以指定pypi镜像地址。

最主要的是[packages]与[dev-packages],分别指的是项目运行依赖与编译依赖。

比如我们加入requests:

[packages]
requests = "==2.28.1"

[requires]里的python_version可以指定使用的Python解释器版本。

安装模块

有了Pipfile,我们就可以在项目里面执行

pipenv install

来安装Pipfile里加入的所有依赖模块。

另外,我们也可以不在Pipfile文件里加入,而是直接使用类似

pipenv install requests==2.28.1

的命令,来直接安装依赖模块,pipenv会自动把模块加入Pipfile并且安装模块。

在虚拟环境里执行命令

使用

pipenv run [command]

可以在安装的虚拟环境里执行命令。

启用虚拟环境的shell

按照官方手册,

pipenv shell

将会启用虚拟环境的shell,但是我尝试以后发现不成功,所以我采用了类似venv的手动启用方式。

在项目里执行:

source $(pipenv --venv)/bin/activate

如此,就每个项目自动维护了自己的虚拟环境。


原文地址:https://blog.csdn.net/cuxqblt/article/details/142595203

免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!