You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python3.9 Jupyter中scipy/sklearn架构不兼容报错求助

解决Python3.9环境下scipy/sklearn架构不兼容(arm64 vs x86_64)的ImportError

方案1:通过Rosetta 2运行终端,重装x86_64架构依赖

  • 打开终端的「显示简介」,勾选「使用Rosetta打开」,重启终端
  • 卸载所有可能存在架构冲突的依赖:
    pip uninstall -y scipy scikit-learn numpy
    
  • 确认当前pip为x86_64版本(路径应为/usr/local/bin/pip3):
    which pip3
    
  • 重新安装适配x86_64的依赖:
    pip3 install scipy scikit-learn
    

方案2:用Conda创建纯x86_64的Python3.9环境

  • 在Rosetta终端中安装x86_64版本的Miniconda
  • 创建指定架构和Python版本的虚拟环境:
    conda create -n py39_x86 python=3.9
    
  • 激活环境:
    conda activate py39_x86
    
  • 安装依赖:
    conda install scipy scikit-learn
    
  • 将该环境添加到Jupyter Notebook的kernel列表:
    python -m ipykernel install --user --name=py39_x86
    
  • 打开Jupyter后切换到py39_x86 kernel即可使用

方案3:修复现有环境的架构一致性

  • 检查当前Python的架构:
    file $(which python3)
    
  • 检查scipy模块的架构:
    file $(python3 -c "import scipy; print(scipy.__file__)")
    
  • 若两者架构不一致,彻底卸载冲突依赖:
    pip3 freeze | grep -E 'scipy|scikit-learn|numpy' | xargs pip3 uninstall -y
    
  • 使用对应架构的pip重新安装(arm64用/opt/homebrew/bin/pip3,x86_64用/usr/local/bin/pip3),强制源码编译适配当前架构:
    pip3 install --no-binary :all: scipy scikit-learn
    

额外注意事项

  • 确保Jupyter Notebook使用的kernel与安装依赖的Python环境一致,可在Jupyter的「Kernel」菜单中切换
  • 避免同时混用arm64和x86_64的包管理工具(如同时使用/opt/homebrew和/usr/local的homebrew)

内容的提问来源于stack exchange,提问作者Lakeside52

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.21 12:36:17