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

Jupyter Notebook重启后出现‘name is not defined’错误的原因及解决方法

解决Jupyter Notebook重启后name is not defined错误

核心原因

Jupyter Notebook保存的只是代码文本、输出结果和笔记内容,不会保存内核内存中的变量、函数等运行上下文。你关闭笔记本后,内核进程就终止了;次日重新打开时,内核是全新启动的,之前定义的所有变量都不存在,运行依赖这些变量的代码自然会抛出name is not defined错误——导入pandas和numpy只是加载库,没法恢复之前定义的变量。

快速解决方法

  • 按顺序重新运行依赖代码:找到报错变量的定义代码块,从笔记本开头到该代码块的所有内容依次执行(可以用顶部菜单栏的Cell > Run All Above快速执行),确保变量、函数等上下文被重新创建。
  • 定位变量定义:如果不想全量运行,直接找到定义该变量的代码块单独运行,再执行报错的代码即可。

长期预防方案

  • 规范代码顺序:每次关闭前,整理代码块的执行顺序,确保后续代码的依赖项都在前面的块中,避免跨块的无序依赖。
  • 持久化关键数据:如果有需要保留的数据集或变量,不要依赖内核内存,而是用文件存储——比如用pandas.to_csv()保存DataFrame,用numpy.save()保存数组,下次打开时直接从文件加载。
  • 用魔法命令存小变量:对于小体量的变量(比如配置参数),可以用%store魔法命令:
    # 保存变量
    %store my_variable
    # 重启后恢复变量
    %store -r my_variable
    

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.06 16:25:36