Pip install和Conda install的使用

作者:杨杨杨Garrick 时间:2023-11-04 17:32:37 

版本一

conda install xxx:这种方式安装的库都会放在/Users/orion-orion/miniforge3/pkgs目录下。我们在我们的虚拟环境中要用到或下载时先到该路径下去找,若有则直接将其复制到我们的虚拟环境中包得存放位置: ~/site-packages/。若没有,则先下载到/anoconda3/pkgs,在复制到虚拟环境包的路径下。

pip install xxx:这是就要两种情况,一种情况就是此时使用的是conda中安装的python,那么xxx会被安装到/Users/orion-orion/miniforge3/lib/python3.9/site-packages文件夹中;如果当前用的是系统的python,那么xxx会通常会被安装到/Users/orion-orion/.local/lib/python3.9/site-packages文件夹中

版本二

conda ≈ pip(python包管理) + virtualenv(虚拟环境) + 非python依赖包管理

conda 可以安装不限于 Python 的程序库。创建一个局部环境并且安装包。pip 是安装到原有环境中。

pip install 会检查依赖并且安装,但是 conda 会做的更多,甚至会把已经有了的包卸载并且升级成合适的

pip只能安装python包,而conda可以安装由任何语言编写的包
pip不能创建虚拟环境,需要借助另外的包,例如virtualenv,而conda可以创建虚拟环境。
conda 是一次下载多次使用,如果其他环境有这个包,就直接复制到新环境的文件夹中。

版本三

大部分情况下,二者没有区别,怎么安装都可以work,不过,二者混着装各种package你真的会因为版本冲突而发疯!

conda有严格的检查机制,它会保证你当前装的package安装好之后能work,但是,它只检查用conda安装过的package。例如,你新安装的package会依赖numpy ,不过你已经安装numpy(e.g., 1.19.2),但是用pip安装的,不好意思,它会认为你没安装,然后用conda再安装一个依赖版本的numpy(e.g., 1.18.5)。这个时候,两个numpy可能就打架了。并且你pip list与conda list显示的numpy版本可能不一致,结果不知道最后运行程序的时候调用了哪个版本的numpy。

这个时候,uninstall可能也卸载不干净,卸了一个还有一个,最后还可能一直list有却是一个空壳。这个时候,快刀斩乱麻的方法,找到anaconda的lib/site-packages/numpy, 手动删掉它!

pip的一个好处是可以安装时既检查conda安装过package的也检查pip安装过的package。不过,它只负责要什么装什么,不负责能不能把装的一堆packages打通,可能装好不work 。

一般原则,在新环境中,如果装多个packages,既用到conda,又用到pip,那就先conda 的都装好,再pip,如果能用一种装到底,就不要来回换着用。

conda解决依赖的问题很弱,环境包多了以后经常要解决依赖几分钟到十几分钟。我个人感觉比较好的实践是conda创建虚拟环境,装torch/tensorflow等比较难装的包,基础环境配好以后,后面装包一律用pip。

来源:https://blog.csdn.net/qq_44537267/article/details/129339806

标签:Pip,install,Conda,install
0
投稿

猜你喜欢

  • php传值和传引用的区别点总结

    2024-03-18 11:26:39
  • Python趣味实例,实现一个简单的抽奖刮刮卡

    2023-07-20 18:59:41
  • javascript实现日期3级联动下拉框选择菜单

    2023-10-19 02:15:34
  • 轻松解决:mysql数据库连接过多的错误

    2010-09-30 14:28:00
  • Anaconda的安装及其环境变量的配置详解

    2022-08-31 19:21:11
  • python算法与数据结构之单链表的实现代码

    2022-09-30 14:35:39
  • Python生成随机数的方法

    2022-10-18 12:57:28
  • web程序员的思考

    2009-08-04 13:10:00
  • Python3 pandas 操作列表实例详解

    2021-11-30 14:24:12
  • python使用tkinter实现透明窗体上绘制随机出现的小球(实例代码)

    2023-04-29 11:00:24
  • Python常用图像形态学操作详解

    2023-07-27 18:14:51
  • Windows下PyCharm安装图文教程

    2023-02-01 01:16:58
  • MySQL之存储过程按月创建表的方法步骤

    2024-01-25 02:40:40
  • python爬虫入门教程--HTML文本的解析库BeautifulSoup(四)

    2023-08-12 23:45:10
  • Python学习之装饰器与类的装饰器详解

    2023-11-23 20:04:07
  • 使用python实现对元素的长截图功能

    2023-11-20 10:27:44
  • python实现记事本功能

    2022-04-02 09:54:19
  • Python把对应格式的csv文件转换成字典类型存储脚本的方法

    2022-07-08 08:39:06
  • python把一个字符串切开的实例方法

    2022-07-10 21:52:17
  • 教你用Python matplotlib库制作简单的动画

    2021-08-20 02:58:49
  • asp之家 网络编程 m.aspxhome.com