玩转一下 Python
pipenv
集成了 pip
,virtualenv
两者的功能,且完善了两者的一些缺陷。
pipenv 是 Pipfile 主要倡导者、requests 作者 Kenneth Reitz 写的一个命令行工具,主要包含了 Pipfile、pip、click、requests 和 virtualenv,能够有效管理 Python 多个环境,各种第三方包及模块。
- 用 virtualenv 管理 requirements.txt 文件可能会有问题,Pipenv 使用 Pipfile 和 Pipfile.lock,后者存放将包的依赖关系,查看依赖关系是十分方便。
- 各个地方使用了哈希校验,无论安装还是卸载包都十分安全,且会自动公开安全漏洞。
- 通过加载 .env 文件简化开发工作流程。
- 支持 Python2 和 Python3,在各个平台的命令都是一样的。
[2020-09-14 11:19:49.761] ❯ brew install pipenv
Updating Homebrew...
Warning: pipenv 2020.8.13 is already installed and up-to-date
To reinstall 2020.8.13, run `brew reinstall pipenv
A thoroughly biased feature table
Name | Pip + venv | Pipenv | Poetry | pyenv | pythonloc | Conda | this |
---|---|---|---|---|---|---|---|
Managesdependencies | Y | Y | Y | Y | Y | ||
Resolves/locks deps | Y | Y | Y | Y | |||
Manages Python installations | Y | Y | Y | ||||
Py-environment-agnostic | Y | Y | Y | ||||
Included with Python | Y | ||||||
Stores deps with project | Y | Y | Y | ||||
Requires changing session state | Y | Y | |||||
Clean build/publish flow | Y | Y | |||||
Supports old Python versions | withvirtualenv | Y | Y | Y | Y | Y | |
Isolated envs for scripts | Y | ||||||
Runs project fns from CLI | Y | Y | Y |
参考资料
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论