最近为了给测试搭自动化测试,重新开始搞起 Python,但是整体工程结构比较苦恼。
重点是版本管理,requirements.txt 感觉不怎么好用。Pipenv? Tox? 还是其它的啥?
以及像 package.json 里 scripts 的用法,python 有类似的吗?
1
cdyrhh 2020-09-10 15:11:30 +08:00 1
poetry
|
2
dddd1007 2020-09-10 15:24:05 +08:00
poetry +1
|
5
Trim21 2020-09-10 15:32:04 +08:00
poetry 应该是目前为止 python 中最像 npm 的包管理器了。
你可以先创建虚拟环境然后再虚拟环境里 poetry install,所有的包就会安到虚拟环境里面了。 等价于 npm 的 scripts 的用法目前还没有,但是在计划中了 |
6
laike9m 2020-09-10 16:13:38 +08:00 via Android 2
感觉你先要先了解一下包管理的概念。像你提到的 Tox,和包管理压根就没一毛钱关系。我个人反正都是 Poetry 一把梭。
可以听一下我们的这期节目,捕蛇者说 Ep 15. 和 PyPA 的成员聊聊 Python 开发工作流 https://www.pythonhunter.org/episodes/ep15 这期中文 Python 圈子里最懂 packaging 的两个人我们都请到了,讨论了各种常用方案包括 pipenv 和 poetey |
8
watanuki 2020-09-10 16:28:03 +08:00 1
我 python 用的不多,也很长时间没用 python 了,我对 python 包管理的认识还停留在 pip install 和 conda install,anaconda 还算好用?
|
9
0bit 2020-09-10 16:29:51 +08:00
poetry + 1
|
10
TimePPT 2020-09-10 16:39:23 +08:00
看来 pipenv 把大家坑的都没人提了😂
|
11
chenqh 2020-09-10 16:42:23 +08:00
我只会 pip install
|
13
arischow 2020-09-10 16:44:48 +08:00 via iPhone
poetry 可以配置不要创建虚拟环境,然后用自己指定的虚拟环境作为包的安装位置。
|
14
fhsan 2020-09-10 16:49:15 +08:00
我不信
pipenv 2018.11.26 2020.8.13 |
15
cominghome 2020-09-10 17:01:14 +08:00
懒得整别的,一直都是 pip 一把梭,倒是没遇到过什么大问题
|
16
Hstar 2020-09-10 17:01:58 +08:00
pipenv 已经没人用了吗,我觉得蛮好用的
|
17
hahajing2019 2020-09-10 18:00:29 +08:00
miniconda
|
18
hyperbin 2020-09-10 18:04:53 +08:00 via Android
就我一个在用 pip 吗
|
20
Ricardoo 2020-09-10 19:48:14 +08:00
为什么都没人说 conda ?我用 anaconda 和 miniconda
|
21
lithiumii 2020-09-10 19:54:49 +08:00 1
我也是 conda,平常用 miniconda,树莓派用 miniforge
看来要学学 poetry |
22
wizardoz 2020-09-10 19:55:36 +08:00
哪个最好用不知道,一直用 pip,够用,懒得去折腾新的
|
23
clemente0620 2020-09-10 19:59:14 +08:00
miniconda
|
24
rglee 2020-09-10 20:18:21 +08:00 via Android
我只用 pip 和 conda,这是跟不上主流了吗?
|
25
l1xnan 2020-09-10 22:17:13 +08:00 via Android
数据分析项目 conda,日常脚本 pip,Python 包开发 poetry,部署 docker,pipenv 半残坑货
|
26
freakxx 2020-09-10 22:38:09 +08:00 1
pipenv 有挺多问题,但还是很好用
poetry 试用过一段时间,感觉还是不太习惯,感觉不太对味。 |
27
yucongo 2020-09-10 23:07:06 +08:00
超超赞 poetry,建议初学时花时间看完 poetry 主页的文档。用一阵后再看一次。
|
28
hhbcarl 2020-09-11 00:54:14 +08:00
感觉其他的包管理工具太重了,加了好多新概念,不够「原生」,我用 pip-tools 足够了。
|
29
CareiOS 2020-09-11 09:49:55 +08:00
miniconda+1
|
30
sharpy 2020-09-11 10:15:34 +08:00
miniconda+1
|
31
sylvos 2020-09-11 11:49:46 +08:00 via iPhone
miniconda
|
32
dayeye2006199 2020-09-11 12:41:54 +08:00
Miniconda pip,docker base 镜像打开就能用
|
33
IgniteWhite 2020-09-11 15:07:35 +08:00 via iPhone
@lithiumii 我树莓派也用 miniforge !感觉 solving environment 好快
|
34
kkbblzq 2020-09-11 16:19:24 +08:00
poetry + 1
之前用 pipenv,依赖多了以后问题很多,而且差不多 2 年没有人维护(最近终于继续维护了),所以换了 poetry,目前用下来基本满足需求 |
35
lostpg 2020-09-11 18:26:34 +08:00
Poetry 吧,conda 更像是全局的虚拟环境管理,poetry 更像是 npm,cargo 那样的项目的环境和包管理。
|
36
sayhi 2020-09-12 00:10:55 +08:00 via Android
miniconda
|
37
Pho3nix 2020-09-12 09:51:50 +08:00
conda 有些时候版本冲突很难受,poetry 有解决么?
|
41
610915518 2020-09-13 08:11:34 +08:00 via iPhone
pip install -r requirements.txt
|
42
yzc27 2020-09-13 10:36:39 +08:00
以前 pyenv + pipenv,现在 pyenv + poetry
|
43
Trim21 2020-09-13 11:43:42 +08:00 via iPhone
|
44
ghostviper 2020-09-13 12:17:22 +08:00
python 版本管理 用 pyenv ;虚拟工程环境管理用 pyenv-virtualenv ;包管理用 pip (记得把源都改成国内,安装 python 的方式用代理先下载指定的压缩包放到~/.pyenv/cache 下 pyenv install XXX )
|
45
generated 2020-09-13 13:02:28 +08:00
python 的包管理真的是太混乱了,
|