pipenv

pipenv,第1张

pipenv

一。


1. 使用pip安装pipenv及其相关依赖

pip install pipenv

2. 将目录更改为包含你的Python项目的文件夹,并启动Pipenv

cd my_project
pipenv install

这将在项目目录中创建两个新文件Pipfile和Pipfile.lock, 为pipenv包的配置文件,代替原来的 requirement.txt. 项目提交时,可将Pipfile 文件和Pipfile.lock文件一并提交,待其他开发克隆下载,根据此Pipfile 运行命令pipenv install --dev生成自己的虚拟环境。


 如果项目不存在,则为项目创建一个新的虚拟环境。


如果你添加–two或–three标志到上面的最后一个命令,它分别使用Python 2或3来初始化你的项目。


否则将使用默认版本的Python

二。


管理Python依赖包

Pipfile包含关于项目的依赖包的信息,并取代通常在Python项目中使用的requirements.txt文件。


如果你在具有requirements.txt文件的项目中启动了Pipenv,则在把它从项目中删除之前,应该使用Pipenv安装该文件中列出的所有依赖包。


要为你的项目安装Python包,请使用install关键字。


例如,

pipenv install beautifulsoup4

将安装当前版本的Beautiful Soup包。


可以使用uninstall关键字以类似的方式删除包,

pipenv uninstall beautifulsoup4

可以通过更新Pipfile.lock来冻结软件包名称及其版本,以及其依赖关系的列表。


这可以使用lock关键字完成的,

pipenv lock

如果另一个用户克隆存储库,可以添加Pipfiles到你的Git存储库,这样他们只需要在他们的系统中安装Pipenv,然后键入,

pipenv install

Pipenv会自动找到Pipfiles,创建一个新的虚拟环境并安装必要的软件包。


三。


管理开发环境

通常有一些Python包只在你的开发环境中需要,而不是在你的生产环境中,例如单元测试包。


Pipenv将使用–dev标志保持两个环境分开。


pipenv install --dev nose2

nose2,但也将其关联为只在开发环境中需要的软件包。


这很有用,因为现在,如果你要在你的生产环境中安装你的项目,

pipenv install

默认情况下不会安装nose2包。


但是,如果另一个开发人员将你的项目克隆到自己的开发环境中,他们可以使用–dev标志,

pipenv install –dev

并安装所有依赖项,包括开发包。


运行你的代码

方法1:

  a).  pipenv shell

   b). cd my_project

   c). python test.py

方法2:

为了激活与你的Python项目相关联的虚拟环境【IDE中设置python用】,你可以使用简单地shell命令,比如

pipenv run which python

将在你的虚拟环境中运行which python命令,并显示与你的虚拟环境相关联的python可执行文件所在的路径。


这是在虚拟环境中运行你自己的Python代码的一个简单方法,

pipenv run python my_project.py

如果你不想每次运行Python时都输入这么多,你可以在shell中设置一个别名,例如,

alias prp="pipenv run python"
pipenv的其他命令
  • pipenv --where:寻找项目根目录。


  • pipenv install:安装 Pipfile 中所列的所有包。


  • pipenv install --dev:安装 Pipfile 中 dev 环境所列的所有包。


  • pipenv uninstall:卸载所有包。


  • pipenv install pytest --dev:在 dev 环境中安装 pytest 包。


  • pipenv lock:确认 Pipfile 中所有包已安装,并根据安装版本生成 Pipfile.lock


  • pipenv shell:应用虚拟环境。


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/zaji/589465.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-04-12
下一篇 2022-04-12

发表评论

登录后才能评论

评论列表(0条)

保存