我想以某种方式将我的IPython.html.widgets
的值存储在我的ipython笔记本中。
有没有办法从单元格本身的代码中修改当前单元格的元数据?
答案 0 :(得分:4)
如果我理解你在寻找什么:
从Cell Toolbar
(ipython笔记本工具栏的右上角),从下拉列表中选择Edit Metadata
。
答案 1 :(得分:4)
我不知道如何在笔记本中执行此操作,但我找到了使用自定义http://itisprakash.blogspot.com/2016/05/cross-compile-alljoyn-for-raspberrypi.html和nbconvert进行此操作的方法。
您可以创建一个扩展preprocessor的类。在预处理(或preprocess_cell)方法中,添加用于在单元元数据中存储相关输出的逻辑。
类似的东西:
class MyExecutePreprocessor(ExecutePreprocessor):
def preprocess_cell(self, cell, resources, index):
# Execute the cell normally
cell, resources = super().preprocess_cell(cell, resources, index)
# Add your magic here
cell.metadata['widgets'] = {'stuff':'that is cool'}
return cell, resources
然后,您可以执行此预处理器nbconvert.preprocessors.ExecutePreprocessor,或作为programatically的参数。