如何在Jupyter Notebook间导入Gurobi相关字典?
跨Jupyter Notebook导入字典数据的两种简单方法
方法1:使用Jupyter魔法命令%run
- 直接在Notebook B的单元格中运行以下命令,加载Notebook A中的所有变量:
%run "Notebook A.ipynb"
- 运行后,你就能在Notebook B里直接使用
itemsInfo、demands和items这些变量,用法和在Notebook A里完全一致。 - 注意:如果两个Notebook不在同一文件夹,需要填写完整文件路径,比如
%run "../notebooks/Notebook A.ipynb"。 - 优势:操作最简洁,无需额外编写保存/读取代码,适合快速复用数据。
- 小提醒:如果Notebook A包含大量无关代码或输出,运行后会在Notebook B中一并执行,这种情况更推荐用下面的方法。
方法2:用Pickle序列化保存数据
这种方法把字典数据保存为本地文件,再在Notebook B中读取,无需运行Notebook A的其他代码。
在Notebook A中保存数据:
在读取完数据的单元格后,添加以下代码:
import pickle # 将需要复用的变量打包存入文件 with open('ie522_data.pkl', 'wb') as f: pickle.dump((itemsInfo, demands, items), f)
运行后,当前文件夹会生成ie522_data.pkl文件,里面存储了三个变量的完整内容。
在Notebook B中读取数据:
新建单元格运行以下代码加载数据:
import pickle # 从文件中加载保存的变量 with open('ie522_data.pkl', 'rb') as f: itemsInfo, demands, items = pickle.load(f)
- 优势:不依赖Notebook A的其他代码,数据可反复读取,适合数据量较大或需要在多个Notebook中复用的场景。
- 注意:如果文件不在当前路径,同样需要填写完整路径。
内容的提问来源于stack exchange,提问作者CD Engr Student
相关产品推荐
相关产品推荐

