Mac M1设备Jupyter Notebook导入pandas报mach-o wrong architecture错误问询
问题根因
- Jupyter内核绑定的解释器与目标conda环境不匹配:报错中调用的pandas位于
/opt/homebrew/lib/python3.9/site-packages/路径,属于系统Python3.9环境,并非你配置的Python3.7版本conda环境,内核指向错误是直接诱因 - 架构冲突:当前shell运行在arm64架构下,但你使用的conda Python解释器是x86_64架构,homebrew安装的arm版pandas二进制包无法被x86架构的Python调用,触发架构不兼容报错
解决方案
1. 移除错误的Jupyter内核
先激活你的目标conda环境,执行以下命令查看所有已注册的内核:jupyter kernelspec list
找到对应当前环境的内核条目,执行删除命令:jupyter kernelspec remove <你的内核名称>
2. 为目标conda环境重新注册正确内核
保持conda环境处于激活状态,依次执行:
pip install ipykernel python -m ipykernel install --user --name rre-rent --display-name "Python (rre-rent)"
其中display-name可自定义,用于在Jupyter内核选择菜单中识别目标环境
3. 安装适配x86架构的对应版本pandas
在激活的conda环境中,指定x86架构安装pandas 1.3.4版本:arch -x86_64 pip install pandas==1.3.4
如果偏好conda安装,执行:CONDA_SUBDIR=osx-64 conda install pandas==1.3.4
4. 验证修复结果
在当前conda环境中启动Jupyter Notebook,选择刚创建的Python (rre-rent)内核,执行import pandas as pd测试导入是否正常,可同时执行print(pd.__file__)确认pandas安装路径在你的conda环境目录下,而非homebrew的Python3.9路径。
内容的提问来源于stack exchange,提问作者Mathilde Roblot
相关产品推荐
相关产品推荐

