文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

好用的 Python 虚拟环境,没有之一

2024-12-03 02:06

关注

本文转载自微信公众号「Python技术」,作者派森酱。转载本文请联系Python技术公众号。

一般我们创建 Python 项目的时候都会创建一个虚拟环境,这样做的好处就是会把项目环境和操作系统环境区分开来,避免把操作系统环境弄乱。

还有一个痛点就是我们在开发环境开发完成之后,需要把代码复制到生产环境上线,这时候我不想将开发环境的所有包重新在 pip install 一次了,怎么办?

于是 pipenv 应运而生。见名识意,pipenv 就是 pip 和 virtualenv 的结合体。

安装

直接使用 pip3 进行安装即可。

  1. pip3 install pipenv 

创建虚拟环境

  1. $ mkdir demo 
  2. $ cd demo 
  3. $ pipenv install 

安装完成之后会在你的项目目录自动生成 Pipfile 和 Pipfile.lock 两个文件,他们主要是用来管理包的。不信,我们用 pipenv 安装下 requests 库试一下。

  1. $ pipenv install requests 

咱们来看下 Pipfile 和 Pipfile.lock 的内容。

  1. # Pipfile 
  2.  
  3. [[source]] 
  4. url = "https://pypi.org/simple" 
  5. verify_ssl = true 
  6. name = "pypi" 
  7.  
  8. [packages] 
  9. requests = "*" 
  10.  
  11. [dev-packages] 
  12.  
  13. [requires] 
  14. python_version = "3.8" 
  1. # Pipfile.lock 
  2.  
  3. 省略部分信息 
  4. "default": { 
  5.     "requests": { 
  6.         "hashes": [ 
  7.             "sha256:27973dd4a..."
  8.             "sha256:c210084e3..." 
  9.         ], 
  10.         "index""pypi"
  11.         "version""==2.25.1" 
  12.     }, 
  13. 省略部分信息 
  14. }, 
  15. "develop": {} 

Pipfile 列出了 requests 库的信息和 Python 版本信息,细心的你可能发现了,该文件中还有一个 dev-packages 的信息,安装时如果指定 -dev 参数,那么就会记录在 dev-packages 下面。而 Pipfile.lock 则保存了库的哈希值,这是确保生产环境和开发环境库信息一致的关键。

当你把项目从开发环境复制到生产环境之后,只需要执行 pipenv install 就可以了,无需在重新安装之前在开发环境安装的包了,是不是很省心。

其他命令

进入虚拟环境:

  1. $ pipenv shell 

退出虚拟环境:

  1. $ exit 

安装库:

  1. $ pipenv install xxx 

删除库:

  1. # 删除指定库 
  2. $ pipenv uninstall xxx 
  3.  
  4. # 删除所有库 
  5. $ pipenv uninstall --all 

升级库:

  1. $ pipenv update 

查看库的具体信息:

  1. $ pipenv open xxx 

获取本地工程路径:

  1. $ pipenv --where 

获取虚拟环境路径:

  1. $ pipenv --venv 

检查库的依赖关系,这个非常有用。

  1. $ pipenv graph 

检查库的安全性:

  1. $ pipenv check 

删除虚拟环境:

  1. $ pipenv --rm 

总结

 

今天我们介绍了 Python 虚拟环境 pipenv 的使用,好的工具可以事半功倍,希望对小伙伴们有所帮助。

 

来源: Python技术 内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-后端开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯