Jupyter Notebook中为Python3.8安装exafmm-t报SyntaxError求助
错误根因
- 报错和exafmm本身的安装配置流程无关,核心是混淆了Jupyter Notebook的命令解析规则:代码单元默认按照Python语法解析所有输入内容,仅两类特殊写法会绕过Python解析流程:
- 带
!前缀的内容,会被传递给系统shell直接执行 - 以
%开头的是IPython内置魔法命令,用于路径切换、环境配置等内置场景
- 带
- 原执行代码里,
./configure、make、make install属于系统shell命令,但没有添加!前缀,被Jupyter当成Python代码解析,因此触发SyntaxError: invalid syntax报错,这个问题和是否额外添加sudo前缀没有关联。
修正后的安装执行代码
给所有需要调用系统shell的命令统一补充!前缀,调整后的可运行代码段如下:
!git clone https://github.com/exafmm/exafmm-t.git %cd exafmm-t !./configure !make !make install
常见踩坑提醒
- 如果某条命令需要管理员权限执行,
sudo需要放在!前缀之后书写,例如需要提权完成系统目录安装时,对应命令为!sudo make install,不能去掉!单独书写shell命令。 - 编译安装过程中输出大量终端日志属于正常现象,只要命令最终返回成功状态、没有抛出非零退出码,就代表流程执行完成。
内容的提问来源于stack exchange,提问作者hh1077
相关产品推荐
相关产品推荐

