Python中pip和conda的爱恨情仇

这篇具有很好参考价值的文章主要介绍了Python中pip和conda的爱恨情仇。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

在使用pip和conda时,是否也有过以下的疑惑???

目前只总结了以下常见的几种混淆,如有学者还有其它疑惑,欢迎留言讨论,我会解答更新,帮助自己理清的同时,也帮助其他同样困惑的学者,谢谢!

pip与conda的联系与区别

pip 更轻量简单,conda 更全面强大。

pip 和 conda 都是 Python 的包管理工具,它们有联系也有区别:

联系

  • 都可以用来安装、卸载和管理 Python 包。
  • 都可以连接 PyPI 来安装 Python 包。conda 还可以连接 Anaconda cloud。
  • 都可以导出当前环境的包信息。
  • 都可以创建 Python 虚拟环境。

区别

  • pip 是 Python 内置的,conda 属于 Anaconda/Miniconda 发行版。
  • pip 只能管理 Python 包,conda 可以跨语言管理 Python、R 等语言的包。
  • pip 不能直接管理不同的 Python 环境,conda 可以轻松管理多个环境。
  • pip 依赖 Python,conda 可以单独存在。
  • pip 安装源仅从 PyPI 获取,conda 可以从 Anaconda cloud 获取。
  • pip 管理虚拟环境需要 virtualenv,conda 自带环境管理。
  • pip 的组件更单一,conda 集成了包管理、环境管理等功能。

什么时候用pip,什么时候用conda

综合考虑项目需求,两者可以搭配使用,发挥各自的优势。

优先考虑使用 pip

  • 当只需要安装 Python 包时。pip 更专注于 Python 包管理。
  • 当系统中没有安装 Anaconda/Miniconda 时。pip 是 Python 的内置包管理工具。
  • 当需要使用 Python 虚拟环境时。pip + virtualenv 可以方便管理虚拟环境。
  • 当需要安装一些仅提供 wheel 文件的第三方库时。pip 对 wheel 文件支持更好。
  • 当需要轻量级的包管理工具,或者对环境依赖不敏感时。pip 更轻量简单。

优先考虑使用 conda

  • 当需要安装语言间依赖时,如 Python 和 R 包。conda 支持多语言包管理。
  • 当需要跨操作系统移植环境时。conda 可以导出互通的环境配置。
  • 当需要管理多个独立的 Python 环境时。conda 环境管理更便捷。
  • 当需要避免环境依赖问题时。conda 对包依赖解析更全面。
  • 当需要对系统级别的组件进行管理时。conda 可以安装一些系统级组件。
  • 当需要使用 Anaconda 发行版中的其他功能时。conda 提供更全面的功能。

pip install 和conda install的区别

来源不同

  • pip 是 Python 的默认包管理工具,与 Python 捆绑在一起。
  • conda 是 Anaconda/Miniconda 发行版特有的包管理工具。

依赖管理差异

  • pip 只能管理 Python 包的依赖。
  • conda 可以跨语言管理 Python、R 等各种语言的包依赖。

环境管理差异

  • pip 不能直接管理不同的 Python 环境。
  • conda 可以方便管理多个独立的 Python 环境。

包来源不同

  • pip 安装包默认都来自 Python Package Index (PyPI)。
  • conda 安装包可以来自 Anaconda 自己的仓库,也可以来自 PyPI。

系统环境要求

  • pip 对系统环境要求较低。
  • conda 对系统环境有一定要求,需要预装 Miniconda/Anaconda。

同一虚拟环境下,pip list和conda list显示不一样

pip 和 conda 各有自己的包管理逻辑,所以在同一个环境下,从相同渠道安装同样的包,也可能因为各自的算法和规范不同,导致最后的安装包不一样。

  1. pip 和 conda 默认使用不同的包仓库。pip 默认只访问 PyPI 上面的 Python 包,而 conda 默认同时访问 Anaconda仓库和 PyPI。

  2. 即使安装相同的包,由于 pip 和 conda 的依赖解析算法不同,安装的依赖包可能也不太一样。这会导致它们最后安装的组件不同。

  3. 对于一些跨语言的包,如 R 语言包,conda 可以识别安装,但 pip 识别不了这些非 Python 包。

  4. 一些只提供 wheel 格式文件的 Python 包,pip 可以直接安装,但 conda 可能需要从源代码编译安装。

  5. pip 和 conda 的包版本探测算法不同,可能导致对同一个包安装不同版本。

  6. 在虚拟环境创建时,conda 会默认预装一些其认为重要的包,但 pip 不会。

  7. pip 和 conda 的包名规范有少许差异,这也可能导致某些包METADATA信息不一致。文章来源地址https://www.toymoban.com/news/detail-684364.html

到了这里,关于Python中pip和conda的爱恨情仇的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【Python】保姆级万字讲解:Python中的 pip 和 conda 的理解

    相信对于大多数熟悉Python的人来说,一定都听说并且使用过pip这个工具,但是对它的了解可能还不一定是非常的透彻。 当然在Python 3.4版本之后以及Python 2.7.9版本之后,官网的安装包当中就已经自带了pip,用户直接在安装完Python之后就可以直接使用,要是使用由virtualenv或者

    2024年02月16日
    浏览(32)
  • 【Python】用 conda install 还是 pip install 好?

    conda install 是 Anaconda 平台中的包管理命令,用于在 Python 环境中安装第三方库和软件包。Anaconda 是一个开源的、基于 Python 的数据科学平台,提供了强大的包管理和环境管理功能,适用于科学计算、数据分析和机器学习等领域。 下面是 conda install 的一些重要特点和用法介绍:

    2024年02月16日
    浏览(44)
  • Linux系统下python pip/conda安装opencv(opencv-python)编译出错解决方法

    问题描述: 提示编译出错(不同的pip/conda/linux版本报的错误不一致) 错误一:  错误二: 解决方法一: 安装build-essential与cmake后,再然后重新安装opencv-python,安装指令如下(若无需使用opencv-python新版本的特定功能,则不推荐使用,因为新版本需要编译安装,编译时间约20分钟

    2024年02月05日
    浏览(29)
  • 【技术分享】Anaconda下载安装、pip切换镜像源、conda切换镜像、conda创建指定Python版本虚拟环境教程

    步骤: 进入Anaconda官网,点击 Download 按钮下载最新的Anaconda版本包。 注意: 在 Download 下方有一段小字,写着 Python 3.9 • 64-Bit Graphical Installer • 688 MB ,说明现在最新的版本是Python3.9,图形化的安装包有688MB,是64位的架构。 【有人疑问说】: 我想下载Python3.8对应的Anaconda,

    2024年02月07日
    浏览(73)
  • ”conda,pip,git clone和源码安装“四种方式安装 python 包

    一、安装位置 主要存在三个安装位置: 无论系统环境还是虚拟环境,conda install 均将 package 安装到 anaconda3/pkgs 目录下 系统环境下 pip install 将 package 安装到 ~/.local/lib/python3.x/site-packages 目录下 虚拟环境下 pip install 将 package 安装到 anaconda3/envs/current_env/lib/python3.x/site-packages 目录

    2024年02月11日
    浏览(33)
  • conda 进入python环境里pip install安装不到该环境或不生效

    参考:https://blog.csdn.net/weixin_47834823/article/details/128951963 https://blog.51cto.com/u_15060549/4662570?login=from_csdn cmd打开运行窗口,cd切换路径至指定虚拟环境下的Scripts路径后再pip安装 擦好看目录:可以python -m site查看 vim C:Usersloong.condaenvsnlpLibsite.py 修改后再pip安装测试查看: python

    2024年02月21日
    浏览(38)
  • Python:conda install cudatoolkit的备选方案:pip install nvidia-cudnn-*:

    由于使用深度学习框架的不同,有的时候我们需要切换cudnn环境。比起在系统中安装多个cudnn版本,更便捷的方法是通过在python环境下安装cudnn工具,这样不同的cudnn环境就可以用python的包管理器(如conda等)管理,使用起来很方便。 最常用的方式是在conda下,通过安装不同版本

    2024年02月11日
    浏览(39)
  • pip install opencv-python出错 Getting requirements to build wheel ... error (conda 环境)

    目的:使用python2,安装cv2 module 出现问题。 最近训练神经网络的代码,遇到使用python2的源码,自己改成python3的时候发现问题。还是改到python2。但是还遇到问题。特别是安装cv2模块的时候: 对于这类问题,最后发现是,在使用 pip install opencv-python的时候,默认安装较新的版本

    2024年02月13日
    浏览(30)
  • Python3.11教程3:模块和包(pip/conda)、文件系统(os/ shutil/json/pickle/openpyxl/xlrd)

    本文相关链接: Python官网、Python 3.11.5 中文文档、慕课:Python语言程序设计、Real Python :Write More Pythonic Code Miniconda、Anaconda、conda文档 Python 标准库官方文档、 《os — 多种操作系统接口》、《os.path — 常用路径操作》、《shutil — 高阶文件操作》 Pandas文档《Input/output》、 op

    2024年02月09日
    浏览(42)
  • Anaconda虚拟环境下更换python版本【不论升版本、降版本都使用conda install python命令】【注意:修改版本后原来使用pip安装的包会被删掉,无法使用】

    使用python -V命令查看当前虚拟环境的python版本: 可知python版本为为3.7.15,现在我想把它升级为3.8。 使用命令: 可知python版本已经变为3.8。 如果在conda install python=3.8中遇到问题,例如: Solving environment: failed with initial frozen solve. Retrying with flexible solve.  则可以先使用:  当当

    2024年02月11日
    浏览(69)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包