conda 环境激活后,pip 版本没有切换到你预期的版本。这是 Windows 上使用 Conda 时一个比较常见的困扰。

server/2024/12/28 12:15:17/

 conda 环境激活后,pip 版本没有切换到你预期的版本。这是 Windows 上使用 Conda 时一个比较常见的困扰。原因在于,环境变量的优先级问题。

  1. Conda 环境机制: Conda 环境通过修改环境变量来实现 Python 和包的隔离。当你激活一个环境时,Conda 会修改 PATH 变量,将该环境的 Python 路径放在前面,从而使系统优先使用该环境的 Python。

  2. pip 的路径问题: pip 安装时也会将 pip 的可执行文件添加到 PATH 环境变量中。通常,base 环境的 pip 路径会先被添加到 PATH 变量中,然后 conda 环境激活时,conda 环境的 pip 路径会添加到 PATH 变量的较前面,

  1. 路径问题: where pip 命令输出了两个 pip.exe 的路径:

    • C:\ProgramData\Miniconda3\Scripts\pip.exe (这是 base 环境的 pip)

    • C:\ProgramData\Miniconda3\envs\python38\Scripts\pip.exe (这是 python38 环境的 pip)

  2. 当前路径: 你在 Anaconda Prompt 中,当前路径停留在 C:\ProgramData\Miniconda3\Scripts,而不是 python38 环境的 Scripts 文件夹。

  3. 优先级问题: 当你在 (python38) 环境下输入 pip 时,系统会按照 PATH 环境变量的顺序查找 pip.exe,由于你当前路径是 C:\ProgramData\Miniconda3\Scripts,所以优先找到了 base 环境的 pip.exe,即使你已经激活了 python38 环境。

解决方案:

基于以上分析,以下是修正的解决方案,重点在于你需要在 python38 环境下使用正确的 pip 路径

方案一:使用完整的 pip 路径 (推荐,最可靠)

这是你最应该采用的方法,确保使用正确的 pip.exe:

  1. 确定 python38 环境的 pip 路径:

    • 你已经通过 where pip 找到了这个路径:C:\ProgramData\Miniconda3\envs\python38\Scripts\pip.exe

  2. 使用完整路径调用 pip:

    • 当你需要在 python38 环境中安装包时,使用以下命令:

      "C:\ProgramData\Miniconda3\envs\python38\Scripts\pip.exe" install <package_name>

      content_copydownload

      Use code with caution.

      将 <package_name> 替换为你需要安装的包。
      例如:

      "C:\ProgramData\Miniconda3\envs\python38\Scripts\pip.exe" install numpy

      content_copydownload

      Use code with caution.

方案二:进入 python38 环境的 Script 目录 (可行但稍显麻烦)

这种方法不推荐,但是可以让你直接使用 pip 命令:

  1. 激活 python38 环境: 你已经激活了。

  2. 切换到 python38 环境的 Scripts 目录:

    cd C:\ProgramData\Miniconda3\envs\python38\Scripts

    content_copydownload

    Use code with caution.
  3. 使用 pip 命令: 现在你可以直接使用 pip 命令安装包,它会使用 python38 环境中的 pip.exe:

    pip install <package_name>

    content_copydownload

    Use code with caution.

    例如:

    pip install numpy

    content_copydownload

    Use code with caution.
  4. 注意: 当你操作完成后,需要使用 cd C:\ProgramData\Miniconda3\Scripts 返回到 Miniconda 根目录,否则会影响后续操作。


http://www.ppmy.cn/server/153908.html

相关文章

vue2前端导出pdf文件

目录 1、安装依赖 ?2、demo 2.1 demo1导出效果 2.2?demo2导出效果 2.3?demo3导出效果 3、源码? 3.1 demo1 3.2 demo2 3.3 demo2 1、安装依赖 导出PDF通常涉及将HTML内容转换为图片&#xff08;截图&#xff09;&#xff0c;然后将这些图片插入到PDF文档中。这个过…

python如何使用RSA加密,避免明文密码

如果在python脚本中出现明文密码&#xff0c;就不符合安全的需求&#xff0c;而md5加密又不够安全&#xff0c;推荐RSA加密&#xff0c;原理不多说&#xff0c;直接说怎么弄 首先执行这个函数&#xff0c;生成公钥和私钥并写入文件 #pip3 install pycryptodome from Crypto i…

Kotlin 语言基础语法及标准库

基础 Kotlin 变量和数据类型 不可变变量 val关键字 类似java中final关键字&#xff0c;必须有初始值&#xff0c;且不更改变量的值Error:(13, 5) Kotlin: Val cannot be reassigned可变变量var 关键字 var myName "china"类型推断 // 没有指定变量类型&#xf…

uniapp使用live-pusher实现模拟人脸识别效果

需求&#xff1a; 1、前端实现模拟用户人脸识别&#xff0c;识别成功后抓取视频流或认证的一张静态图给服务端。 2、服务端调用第三方活体认证接口&#xff0c;验证前端传递的人脸是否存在&#xff0c;把认证结果反馈给前端。 3、前端根据服务端返回的状态&#xff0c;显示在…

RabbitMQ HAProxy 负载均衡

文章目录 前言当Java中指定的端口号绑定的rabbitmq服务挂掉了之后&#xff0c;我们的程序是否还能够成功访问到rabbitmq服务呢什么是 HAProxy 负载均衡HAProxy 安装修改HAProxy配置文件使用HAProxy 前言 前面我们学习了 rabbitmq 搭建集群&#xff0c;并且为了解决集群中队列的…

SD-WAN是什么?

随着数字化转型和云计算的快速发展&#xff0c;企业对网络的需求也发生了巨大的变化。传统的广域网&#xff08;WAN&#xff09;架构已经不能满足现代企业对于灵活性、性能和安全性的需求。为了应对这些挑战&#xff0c;SD-WAN&#xff08;Software-Defined Wide Area Network&…

《Java源力物语》-4.集合府邸的新秀

~犬&#x1f4f0;余~ “我欲贱而贵&#xff0c;愚而智&#xff0c;贫而富&#xff0c;可乎&#xff1f; 曰&#xff1a;其唯学乎” \quad 在java.util领域的集合府邸里&#xff0c;一场特殊的早课正在进行。TreeSet老师站在堂前&#xff0c;目光扫过下面整齐排列的学生们&#…

【论文阅读】AllMatch: Exploiting All Unlabeled Data for Semi-Supervised Learning

一、引言 在当今的机器学习领域&#xff0c;半监督学习&#xff08;SSL&#xff09;作为一种重要的学习范式&#xff0c;受到了广泛的关注。它旨在利用有限的标记数据和大量的未标记数据来提升模型的性能&#xff0c;从而在数据标记成本较高而未标记数据丰富的情况下发挥重要作…