Python 现在最好用的包管理是啥?

2020-09-10 15:10:53 +08:00
 maichael

最近为了给测试搭自动化测试,重新开始搞起 Python,但是整体工程结构比较苦恼。

重点是版本管理,requirements.txt 感觉不怎么好用。Pipenv? Tox? 还是其它的啥?

以及像 package.json 里 scripts 的用法,python 有类似的吗?

8528 次点击
所在节点    Python
46 条回复
cdyrhh
2020-09-10 15:11:30 +08:00
poetry
dddd1007
2020-09-10 15:24:05 +08:00
poetry +1
shunconf
2020-09-10 15:28:15 +08:00
@dddd1007
@cdyrhh poetry 我感觉好难用啊,依赖包都不能指定存放得位置
Trim21
2020-09-10 15:29:55 +08:00
@shunconf #3 什么叫指定依赖包的存放位置...你是说安装完依赖之后的 site-packages 的位置吗
Trim21
2020-09-10 15:32:04 +08:00
poetry 应该是目前为止 python 中最像 npm 的包管理器了。

你可以先创建虚拟环境然后再虚拟环境里 poetry install,所有的包就会安到虚拟环境里面了。

等价于 npm 的 scripts 的用法目前还没有,但是在计划中了
laike9m
2020-09-10 16:13:38 +08:00
感觉你先要先了解一下包管理的概念。像你提到的 Tox,和包管理压根就没一毛钱关系。我个人反正都是 Poetry 一把梭。

可以听一下我们的这期节目,捕蛇者说
Ep 15. 和 PyPA 的成员聊聊 Python 开发工作流
https://www.pythonhunter.org/episodes/ep15

这期中文 Python 圈子里最懂 packaging 的两个人我们都请到了,讨论了各种常用方案包括 pipenv 和 poetey
laike9m
2020-09-10 16:15:20 +08:00
@Trim21 我甚至觉得 poetry 应该把它自己的 virtual env 功能去掉
watanuki
2020-09-10 16:28:03 +08:00
我 python 用的不多,也很长时间没用 python 了,我对 python 包管理的认识还停留在 pip install 和 conda install,anaconda 还算好用?
0bit
2020-09-10 16:29:51 +08:00
poetry + 1
TimePPT
2020-09-10 16:39:23 +08:00
看来 pipenv 把大家坑的都没人提了😂
chenqh
2020-09-10 16:42:23 +08:00
我只会 pip install
0bit
2020-09-10 16:43:05 +08:00
@TimePPT pipenv 早早的就被内定,然后就不思进取了,伤心了
arischow
2020-09-10 16:44:48 +08:00
poetry 可以配置不要创建虚拟环境,然后用自己指定的虚拟环境作为包的安装位置。
fhsan
2020-09-10 16:49:15 +08:00
我不信
pipenv 2018.11.26 2020.8.13
cominghome
2020-09-10 17:01:14 +08:00
懒得整别的,一直都是 pip 一把梭,倒是没遇到过什么大问题
Hstar
2020-09-10 17:01:58 +08:00
pipenv 已经没人用了吗,我觉得蛮好用的
hahajing2019
2020-09-10 18:00:29 +08:00
miniconda
hyperbin
2020-09-10 18:04:53 +08:00
就我一个在用 pip 吗
renmu123
2020-09-10 18:29:45 +08:00
@shunconf 现在已经支持了,也支持在当前项目内创建 venv 了
Ricardoo
2020-09-10 19:48:14 +08:00
为什么都没人说 conda ?我用 anaconda 和 miniconda

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/705815

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX