再见 virtualenv!K神教你轻松管理多个Python环境
Posted 菜鸟学Python
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了再见 virtualenv!K神教你轻松管理多个Python环境相关的知识,希望对你有一定的参考价值。
超级无敌干货第一时间推给你!!!
作为一名程序员,小编在想是否可以通过一个工具实现 Python 开发环境的轻松管理呢。小编在 Github 上找到了一个牛逼的工具,完美的解决了Python 版本及包的管理问题。
它叫 pipenv ,这个管理工具是 Kennethreitz 大神的作品,K神在Python界非常有名,其中大名鼎鼎的request库就是K神写的,这个库 Github 上也收获了 20900 颗星。
一、如何安装
直接用 pip install pipenv
二、常见的操作
1).创建虚拟环境
切换到你的项目根目录,执行 pipenv —Python Python版本,就会生成虚拟环境。
注意命令中指定的Python版本必须是你系统上存在指定的 Python 版本,否则就会报如下错误:
2).安装和卸载Python模块
安装第三方库就可以不用 pip了,可以使用 pipenv install 库名,语法和 pip 指令类似,安装 httpx 执行的指令如下:
卸载第三方库时,执行 pipenv unstall 库名这个命令即可,例如卸载 django:
3).查看项目环境所安装的第三方库
执行 pipenv graph 就会列出你所安装的第三方库信息,还能查看各个库之间的依赖关系。
pipenv 使用 Pipfile 来代替 requirement.txt 文件记录 Python第三方库 的信息。它增加了Pipfile.lock 文件来锁定Python 第三方库的包名及版本,以及其依赖关系的列表。
在开发环境下我们要安装 pytest 这样的库,这些在生产环境其实是用不上的,所以没必要记录到 Pipfile 中,那么我们在安装某个包的时候可以在 install 后面加个参数 —dev,表示只安装在开发环境,安装包记录是在[dev-packages] 部分。
在安装时,指定—dev参数,则只安装 [dev-packages] 下的包,若安装时不定指定—dev参数,只会安装[packages] 包下面的模块。[requires] 下的 Python 在构建新的虚拟环境时,若没有会自动下载安装。
项目提交时,可将Pipfile 文件和Pipfile.lock文件受控提交,待其他开发克隆下载,根据此 Pipfile 运行命令pipenv install 生成自己的虚拟环境。
Pipfile.lock 文件是通过hash算法将包的名称和版本,及依赖关系生成哈希值,可以保证包的完整性。
使用 pipenv 第三方库后不用再额外执行其他记录第三方库信息的操作,它会自动记录新安装的第三方库信息到 Pipfile 和 Pipfile.lock 文件中。
4).运行 Python 脚本
运行 Python 脚本时无需执行激活虚拟环境,直接在项目中的 Pipfile 同级目录下执行 Pipenv run Python 脚本文件即可。
5).Pycharm 中引入 pipenv 中的虚拟环境
执行 pipenv —venv 得到当前虚拟环境的文件夹位置
找到虚拟环境文件夹所在位置,并选中 bin 目录下的 Python 后,就可以用 Pycharm 引入虚拟环境了
找到虚拟环境文件夹所在位置,并选中 bin 目录下的 Python 后,就可以用 Pycharm 引入虚拟环境了
小编比较喜欢 pipenv 自动记录新安装的第三方库的信息,再也不用怕忘记更新项目依赖库的信息了,有兴趣的小伙伴赶紧试试哦。
近期八大热门:
由 菜鸟学Python 原班人马打造的公众号: 程序员GitHub,现已正式上线! 接下来我们将会在该公众号上,为大家 分享GitHub上优质的开源神器,程序员圈的趣事 ,坚持每天一篇原创文章的输出,感兴趣的小伙伴可以关注一下哈!
长按 2 秒,输入【福利】
获取程序员必读好书
点这里,领取新手福利
以上是关于再见 virtualenv!K神教你轻松管理多个Python环境的主要内容,如果未能解决你的问题,请参考以下文章
Python虚拟环境管理 之 virtualenv 和 pipenv
由bash-3.2$ pipenv shellShell for UNKNOWN_VIRTUAL_ENVIRONMENT alread转pipenv,轻松管理多个Python环境