Anaconda Prompt与Jupyter Notebook中SQLAlchemy版本不一致求助
排查SQLAlchemy版本在终端与Jupyter Notebook不一致的问题
核心原因分析
- 环境路径不匹配:Anaconda Prompt中操作的conda环境,和Jupyter Notebook内核加载的环境并非同一个,导致读取的SQLAlchemy版本不同。
- conda与pip的包优先级冲突:conda和pip的包安装路径相互独立,Jupyter可能优先加载conda管理的版本,而非pip修改的版本。
- Jupyter内核关联错误:Jupyter Notebook使用的内核未关联你操作的目标conda环境,仍调用其他环境的包。
具体排查与解决步骤
1. 确认终端与Jupyter的环境路径
- 在Anaconda Prompt中执行:
conda info --envs where python # Windows系统 # 或 which python # Linux/macOS - 在Jupyter Notebook的代码单元格中执行:
import sys print(sys.executable) import sqlalchemy print(sqlalchemy.__version__)
对比两者的Python路径,若不一致,说明Jupyter调用的是其他环境。
2. 关联Jupyter内核到目标conda环境
- 激活你的目标conda环境(示例环境名为
myenv):conda activate myenv - 在该环境中安装ipykernel:
conda install ipykernel - 将环境注册为Jupyter内核:
python -m ipykernel install --user --name=myenv - 重启Jupyter Notebook,在右上角选择
myenv内核后,重新检查SQLAlchemy版本。
3. 用conda统一管理SQLAlchemy版本
既然你主要使用conda,建议直接用conda完成版本降级,避免pip/conda冲突:
conda activate myenv conda uninstall sqlalchemy conda install sqlalchemy=1.4.46
4. 清理冲突的pip安装包
如果之前用pip安装过SQLAlchemy,可在目标环境中卸载pip版本:
conda activate myenv pip uninstall sqlalchemy
之后用conda重新安装指定版本,保证包管理一致性。
内容的提问来源于stack exchange,提问作者Jelle Bosschaart
相关产品推荐
相关产品推荐

