conda和pip

1.众所周知,pip的确是python官方(PyPA)推荐的Python软件包安装管理工具,在安装Python软件包时,第一反应应该是pip。正是由于pip是Python官方推荐的"正统"工具,所以pip只专注于Python软件包之间的依赖,不考虑Python软件包与非Python软件包之间的依赖关系。

而Tensorflow不仅依赖于Python软件包,还依赖于非Python软件包,如cudatoolkit、cudnn、interl-openmp、intel-MKL及protoc等。

conda在安装Tensorflow时,会同时解决TensorFlow所依赖的Python软件包和非Python软件包的问题,让安装变得简单。

此处需要留意conda对于多个环境的包是统一进行管理的,不管在什么环境下载的包,都会额外在一个目录(Anaconda3\pkgs\fasttext)里面备份一份,因此如果使用conda install安装一个别的环境已经装过的包时,不用重新下载,直接copy一份到该环境即可。

但是如果使用pip因为每个环境安装使用的pip在不同的路径下,故会重复安装。

2.conda list下的和pip list下的同样的包,导入的是pip list下的。(这里在csdn上也有别的说法,但我个人下载numpy的时候会优先读pip下的2.0,不读conda的1.26,很怪)

令一种说法:

  1. conda安装 不会查到pip安装的包(先pip后conda会正常安装并调用conda,即conda不认pip下过的,这里就可能会导致一些奇怪的冲突),pip安装 可以查到conda的包(先conda再pip会显示已安装)。

  2. 尽量避免混用,如果必须要混用,先用conda再用pip.

Conda list除了虚拟环境下的还有关联文件下的

Pip list只有当前虚拟环境下的

4.若混用,uninstall后可能会出一些奇怪的问题。先把warning里提到的几个文件删掉(一般问题文件系统会加上~前缀,注意要把其中带-infor后缀的文件也删了(warning里不会出现这个文件,但是会有~前缀,list指令读的是这个文件,不删install会有问题)),再看看anaconda文件里lib和env\lpytorch\lib里还有没有想要删除的包的文件,手动全删,再install就行

相关推荐
@zulnger21 小时前
数据采集的基本知识
python·pip
水淹萌龙2 天前
Agent配置MCP并通过uvx指定pip源
pip
烟锁池塘柳02 天前
【已解决】解决 ModuleNotFoundError: No module named ‘exceptions‘
python·pip
Watink Cpper2 天前
[项目构建]ubuntu24.04下从零部署limap步骤与问题解决方案
python·conda·三维建模·colmap·ubuntu24.04·三维线重建·limap
BubbleCodes2 天前
使用Conda和pip创建Python环境
python·conda·pip
YMWM_2 天前
conda特定环境打包
开发语言·conda·php
YMWM_2 天前
如何将包路径添加到conda环境lerobot的python路径中呢?
人工智能·python·conda
烟锁池塘柳04 天前
【Anaconda】修改 Conda 环境存储路径的几种方法(详细教程)
python·pycharm·conda
GDAL4 天前
qpip 教程:把 Python 包安装、项目脚本和虚拟环境统一到一个命令里
python·pip·venv
故河4 天前
Python工具:Conda 包管理器
开发语言·python·conda