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

如何使用Jupyter Notebook内置魔法命令%run运行父目录中的Python脚本

解决Jupyter Notebook中%run运行父目录脚本的问题

我明白你现在卡在Jupyter里用%run执行父目录脚本的问题上了,试过改sys.path和绝对路径都没效果,别急,咱们一步步来解决:

方案一:用相对路径直接运行(最简单)

你当前的Notebook文件在/home/parent_directory/Child_dir/下,父目录就是上一级,直接用相对路径调用%run就行,不用折腾sys.path:

%run ../script_name.py

注意要加上脚本的后缀.py,Linux系统路径区分大小写,别写错脚本名哦。

方案二:正确添加父目录到sys.path

你之前的代码可能有语法问题(比如缩进错误),而且硬编码绝对路径不够灵活,试试这段修正后的代码:

import os
import sys

# 动态获取父目录的绝对路径(不用硬编码)
parent_dir = os.path.abspath(os.path.join(os.getcwd(), '..'))

# 检查并添加到sys.path
if parent_dir not in sys.path:
    sys.path.append(parent_dir)

运行这段代码后,再执行%run script_name.py就能找到父目录里的脚本了。

排查可能的坑

如果上面的方法还是不行,检查这几点:

  • 确认脚本确实存在于/home/parent_directory/下,路径和文件名完全正确(包括大小写);
  • 脚本里有没有依赖其他文件的相对路径?如果有,运行时的工作目录是Notebook所在的Child_dir,可能需要调整脚本里的路径;
  • 试试重启Jupyter内核,有时候路径修改需要重启才能生效。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.04.27 19:07:33