常规windows powershell进入conda环境和pip & conda的细节区别
先输入
& "C:\Users\yourname\anaconda3\shell\condabin\conda-hook.ps1"
这行命令的作用是:
在当前 PowerShell 会话里“手动”完成 conda 的初始化,相当于一次性执行了 conda init powershell 所做的核心步骤,使得 conda、activate、deactivate 等命令立即可用。
后面就可以conda activate whisper_ASR_model
进入环境里面了
下面给出 「conda 日常高频命令速查表」,全部在 已激活的环境 下可直接使用。复制即用,建议收藏。
🔍 环境管理
| 任务 | 命令 | 示例 |
|---|---|---|
| 查看已有环境 | conda env list | 带 * 表示当前所在 |
| 新建环境 | conda create -n 新名 python=3.10 | 可指定包 |
| 克隆环境 | conda create -n 新名 --clone 旧名 | 快速备份 |
| 删除环境 | conda remove -n 环境名 --all | 彻底卸载 |
| 导出环境配置 | conda env export > env.yml | 用于复现 |
| 用文件重建环境 | conda env create -f env.yml | 一键还原 |
📦 包管理
| 任务 | 命令 | 示例 |
|---|---|---|
| 搜索包 | conda search 包名 | 看版本/平台 |
| 安装包 | conda install numpy | 官方仓库 |
| 指定频道 | conda install -c conda-forge opencv | 用社区源 |
| 更新包 | conda update numpy | |
| 移除包 | conda remove 包名 | |
| 列出已装包 | conda list | 带版本号 |
🚀 清理/优化
| 任务 | 命令 | 说明 |
|---|---|---|
| 清缓存 | conda clean -a | 删除未用包、缓存,省空间 |
| 查看缓存大小 | du -sh ~/anaconda3/pkgs | Linux/mac 可用 |
| 查看当前环境路径 | conda info --envs | 显示完整路径 |
🧪 与 pip 混用安全顺序
-
先
conda install尽量多的包(二进制,不编译) -
再
pip installPyPI 独有包 -
避免来回混装,防止依赖冲突
🔚 一句话总结
conda 三板斧:
create开房、install买包、activate入住;记住这三条,开发环境永不踩坑。
pip install 和 conda install
pip 是 Python 官方“快递员”,只送 Python 包;conda 是跨语言“超市”,还能帮你开房间隔离环境。PyPI 就是 pip 的仓库。
1 pip install vs conda install 核心区别
| 维度 | pip install | conda install |
|---|---|---|
| 仓库来源 | PyPI(Python Package Index) | Anaconda 仓库 + conda-forge |
| 支持语言 | 仅 Python | Python、C/C++、R、Java… |
| 包形态 | wheel(已编译)或源码(需本地编译) | 预编译二进制,下载即用 |
| 环境隔离 | 需配合 venv/virtualenv | 自带 conda create |
| 依赖解析 | 只检查当前包依赖,不保证环境整体一致 | 检查所有包之间冲突,保证兼容 |
| 系统级工具 | ❌ 无法装 ffmpeg、Git 等 | ✅ 一键安装 |
2 PyPI 是什么
-
全称:Python Package Index
-
作用:Python 官方公共仓库,pip 默认从这里下载包。
-
特点:更新快、数量多,但缺少非 Python 依赖或预编译二进制。
3 实战建议
-
先 conda:创建环境、装底层/系统依赖。
-
再 pip:conda 找不到的包或最新版,用 pip 补位。
-
避免来回混装同一包,防止依赖冲突。
4 速记口诀
“conda 搭房又买菜,pip 专送 Python。”
用这两个安装同一个包,可能会有什么不同吗
会!
同一个包名 用 pip install 和 conda install 各装一次,可能出现 4 类差异:
1️⃣ 包来源不同 → 版本号/功能差异
| 现象 | 举例 |
|---|---|
| PyPI 更新更快 | pip 拿到 numpy 1.26.0,conda 还是 1.25.x |
| conda-forge 有补丁 | conda 提供的 opencv 已集成 ffmpeg,pip 版默认 无 ffmpeg |
2️⃣ 依赖链不同 → 系统库差异
| pip 版 | conda 版 |
|---|---|
| 只拉 Python 依赖,缺失系统 DLL | 自动带 mkl, openblas, zlib 等二进制 |
安装后 import 报错 DLL not found | 直接可用 |
3️⃣ 安装路径不同 → 环境冲突
-
pip 会把包装进 当前 Python 的 site-packages。
-
conda 把包装进 conda 环境自己的 pkgs → envs\xxx\Lib\site-packages。
如果 先后混装同一包,后装的会 覆盖前装 的文件,导致版本不确定。
4️⃣ 卸载/升级体验不同
| 操作 | pip | conda |
|---|---|---|
pip uninstall | 只删 Python 文件,留下空目录 | conda remove 会完整清理二进制+依赖 |
| 升级回滚 | 无事务,直接覆盖 | 有事务,可 conda install package==旧版本 一键回退 |
✅ 官方建议顺序(避免踩坑)
-
先 conda create 环境
-
优先 conda install
-
conda 找不到或版本旧 → 再 pip install
-
同一包不要来回混装升级
🔚 一句话总结
同一包名 ≠ 同一包内容:pip 版可能缺系统依赖、版本更新;conda 版可能功能更全、兼容性更好。按“先 conda 后 pip”顺序即可安全混用。
更多推荐



所有评论(0)