conda install需用等号指定版本如numpy=1.21.6,pip则用双等号如pandas==1.3.5;安装前须确认环境激活、源可用、版本存在,否则报错或装错。

直接用 conda install 或 pip install 加版本号就能装指定版本,但必须注意环境是否激活、源是否可用、版本是否存在——这三步错一个,就报错或装错。
conda install 指定版本库时的写法和坑
conda 安装带版本号的包,语法是 conda install package_name=version(注意等号,不是双等号)。
- 比如装
numpy1.21.6 版本:conda install numpy=1.21.6 - 如果当前没激活目标环境,它会装到
base环境里,而不是你想要的项目环境 - conda 默认只搜官方 channel,有些老版本(如
tensorflow=1.15)在默认源里已下架,得加-c conda-forge或换镜像源 - 执行后若提示
PackageNotAvailableError,说明该版本在当前配置的 channels 里根本不存在,不是打错了,是真没有
pip install 指定版本时的版本号格式差异
pip 用双等号 ==,且对版本号解析更严格,比如 pip install pandas==1.3.5 是标准写法;pip install pandas=1.3.5 会直接报错。
- conda 允许写
pandas=1.3(模糊匹配最新 1.3.x),pip 不行,必须写全pandas==1.3.5或用兼容符如pandas>=1.3, - pip 装的包默认进当前激活环境,但如果在 base 环境下没
conda activate myenv就直接 pip,容易污染 base - 某些包(如
torch)官网只提供特定pip install命令(含额外 index-url),不能只靠==,得照官网给的整条命令来
怎么确认你要的版本到底有没有?
别猜,直接查。conda 和 pip 的可用版本列表不互通,得分开验证。
- 查 conda 可用版本:
conda search package_name(例如conda search tensorflow),它会列出所有能装的版本+对应平台 - 查 pip 可用版本:
pip index versions package_name(需要 pip ≥ 21.3),或者去 PyPI 页面 手动翻历史版本 - 注意:Windows 下
win-64、macOS 下osx-arm64等平台标识会影响结果,conda search默认只显示当前系统支持的版本
装完发现版本不对?先检查这三件事
装完运行 import package; print(package.__version__) 发现不是你要的版本,大概率是以下原因:
- 没激活目标环境,实际装进了
base—— 用conda info -e看当前括号里是不是你期望的环境名 - conda 和 pip 混用导致冲突,比如先 conda 装了
scipy,又 pip 覆盖安装,可能引发 ABI 不兼容 —— 建议同一环境只用一种工具管理主依赖 - Python 解释器路径不对:PyCharm 或 VS Code 选错了 interpreter,你以为在
myenv里运行,其实调的是系统 Python —— 查which python(macOS/Linux)或where python(Windows)确认路径
最常被忽略的是:conda 的版本号匹配逻辑和 pip 不同,同一个字符串(比如 1.22)在两边代表的含义可能不一样;加上 channel 配置、平台限制、依赖约束,装指定版本从来不是“输完回车就完事”的操作。动手前先 conda search 或 pip index versions 看一眼,省掉一半重装时间。











