使用的 conda,有公共库的概念吗

2022-08-05 11:32:12 +08:00
 still97

使用的虚拟环境的文件夹大小达到了 1-2G ,主要各个项目共用的库也挺多的,就感觉这样不太合适,我同一台计算机上本地使用的库还要多次重复安装吗?还是说我理解错了。

2368 次点击
所在节点    Python
6 条回复
SuperXX
2022-08-05 12:45:29 +08:00
Miniconda
yangxin0
2022-08-05 12:59:08 +08:00
人家的设计目标就是 sandbox...你却要公共库
hertzry
2022-08-05 13:45:08 +08:00
下载只用一次,安装倒是每个环境都得安装一遍。
nyxsonsleep
2022-08-05 14:07:14 +08:00
@hertzry #3
那是放了 cache 。应该是会定期清理的。
nyxsonsleep
2022-08-05 14:13:51 +08:00
仅以安装为论,你甚至可以直接 copy 环境。立马得到一个完全一样的环境,卸载可比安装简单快速多了。
至于公共,这应该不是用 conda 的人的需求。(现在存储又不贵。

随便可以举例子,A 环境中的 a1 库要求 0.9 版本的 a2 库。
但是 B 环境中的 b1 库要求 1.0 版本的 a2 库。这种情况下有个公共 a2 库会有什么好结果吗?
conda 本来不就是为了避免上面这种情况才用的吗。如果你的库都可以通用,何必创建多个环境?
huangzhiyia
2022-08-14 09:24:31 +08:00
不同版本的库如何共存啊,就算共存下来,各种库还依赖各种其他库,你本来 A1.0 引用 B1.0 版本,然后 A1.0 爆出一个 0day ,要求升级到 A2.0 并且还是一个破坏性更新,需要依赖 B2.0

但有的包必须指定 B1.0 ,这里面依赖关系怎么解决。就算你解决了这个问题,那么成千上百个包之间的依赖关系呢?有没有可能循环依赖呢?升级一个包我还要把所有项目的依赖分析一遍?

反正我个人觉得很复杂.....

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

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

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

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

© 2021 V2EX