Conflict resolution in pip vs. condapip和conda冲突解决

21 浏览
0 Comments

Conflict resolution in pip vs. condapip和conda冲突解决

我认为pip和conda都是包管理器,尽管有所不同,但都会检查在环境中安装的包的一致性!在我的情况下,我有一个requirements.txt列表,在python=3.6之上。在我的conda虚拟环境中,我逐个安装它们。奇怪的是,当我在anaconda.org频道中定位某些软件包并使用conda install安装它们时,conda会发出警告!例如,当我尝试安装statistics=1.0.3.5时,我在终端上得到了这个消息:

UnsatisfiableError: The following specifications were found
to be incompatible with the existing python installation in your environment:
Specifications:
  - statistics=1.0.3.5 -> python[version='2.7.*|<3|>=2.7,<2.8.0a0']
Your python: python=3.6

然而,当我使用pip时,它可以工作!

为什么

我会在日后遇到这个软件包的问题吗?

我读了这个Stackoverflow 帖子关于pip和conda之间的差异,并尝试从文档中理解它(虽然不是特别成功)。

admin 更改状态以发布 2023年5月20日
0
0 Comments

当使用conda虚拟环境时,使用pip安装软件包应该是最后的选择。如果一个包在默认渠道中不可用,则可以先尝试从conda-forge中安装。

conda和pip之间的差异是巨大的(更不用说虚拟环境了):Conda旨在安装一组一致的软件包-这会导致一个优化问题-而pip只是安装依赖项,无论它是否与之前安装的任何软件包冲突。

然而,由于你正在编写单元测试与你的代码,你会立即意识到是否遇到问题。

0