Python依赖管理那点事

本文探讨了Python的依赖管理问题,从pip的不足到virtualenv的缺陷,再到Pipenv的出现如何简化和优雅地解决这些问题。Pipenv集成了pip和virtualenv的功能,解决了版本管理和依赖隔离的挑战,现已成为官方推荐的包管理工具。建议开发者采用Pipenv来管理项目依赖。
摘要由CSDN通过智能技术生成


学Python有段时间了,学的时候会想着拿它和Java对比。

  • 在对比的时候,发现 Java 有很成熟的项目构建工具,有使用 xml 的 Maven,也有使用 groovy 的 Gradle,这样的构建工具能够自动处理项目的依赖,很是方便。
  • 对于Python,在依赖管理方面,从一个初学者的角度看,嗯,只能说,贵圈真乱!(本文纯属个人观点,不喜勿喷) 好吧,让我们捋一捋。
    • 在包管理方面,听说现在在役的包管理工具有 distutils、 setuptools、 distribute、 distlib、 pip,真让人眼花缭乱。幸运的是,现在貌似有setuptools和pip就已经足够了。
    • 在项目依赖隔离方面,Python主要使用虚拟环境,而关于虚拟环境的模块,pyenv、 venv、 virtualenv、 virtualenvwrapper,也是叫人看到头皮发麻!
    • 此外,很多 Python库使用了 C/C++语言,即使 Python 只是一个小版本的更新,对应的库也需要完全重新编译一次,也就是说不同小版本的 Python 的依赖也不一定能兼容。
    • 还有就是版本问题(一直认为是个大坑!),很多时候,我们都希望能用一个工具来在两个版本间灵活地切换,并分别管理它们的依赖。
  • 虽然存在众多不足,但可以看到的是,Python依然在往好的方向发展,比如目前的终极解决方案pipenv,其出现让Python的依赖管理逐渐优雅和简单。下面来总结一下我觉得比较有用的依赖管理工具,希望可以让和我一样的初学者
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值