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就行

相关推荐
kaixin_啊啊9 分钟前
conda环境迁移
conda
小桥流水---人工智能3 小时前
Conda环境创建成功但CMD无法正确激活:为什么出现 `(pytorchgpu)` 仍可能是“假激活”?
conda
小桥流水---人工智能6 小时前
Windows下Conda无法创建Python 3.11虚拟环境:从镜像源404到PackagesNotFoundError的完整排查与解决
windows·conda·python3.11
vortex52 天前
从Conda到UV:Python项目依赖管理的现代演进
python·conda·uv
circuitsosk2 天前
Python 模块与包管理:import 机制、虚拟环境与 pip 完全指南
开发语言·python·pip·依赖管理·模块与包
CODER03043 天前
Anaconda和Mamba创建环境管理包常用命令合集
python·深度学习·conda·虚拟环境·mamba·常用命令大全
New_Horizons6664 天前
Vscode终端激活Conda虚拟环境
ide·vscode·conda
️学习的小王5 天前
Anaconda国内镜像配置与conda常用命令
ide·经验分享·python·conda
bboy枫亭6 天前
Mac安装Miniconda3
python·conda·miniconda
skywalk81639 天前
pypi 的yank 是什么意思?
pip