How to hide one specific cell (input or output) in IPython Notebook?中提到的建议不起作用。
在Windows上,请执行以下操作
jupyter nbconvert a.ipynb --TagRemovePreprocessor.remove_cell_tags="{'remove_cell'}"
但出现错误
traitlets.traitlets.TraitError: The 'remove_cell_tags' trait of a TagRemovePreprocessor instance must be a set, but a value of type 'unicode' (i.e. u"{'remove_cell'}") was specified.
我也尝试了'{“ remove_cell”}'
我正在使用nbconvert 5.4.0
任何想法如何做到这一点?
答案 0 :(得分:0)
需要一些额外的报价才能工作:
--TagRemovePreprocessor.remove_cell_tags={\"remove_cell\"}
。
但是,请注意noteboot到笔记本转换的持续问题-在这种情况下,包括标签删除在内的预处理器似乎无法运行。进一步了解这个问题:
jupyter nbconvert --to notebook not excluding raw cells
更新:未在Windows上进行过测试,仅在Linux上进行过
答案 1 :(得分:0)
在调用它之前,您需要启用TagRemovePreprocessor。
下面的代码显示了如何启用它以及如何将标签作为列表括起来,以便您可以根据需要排除多个标签。要排除单个标签,只需在列表中放置一个元素即可,例如['remove_cell']。
如果要转换为html,则不需要参数--to html(因为html是默认值)。例如,如果要转换为python,请将--to html更改为--to python
jupyter nbconvert a.ipynb --TagRemovePreprocessor.enabled=True --TagRemovePreprocessor.remove_cell_tags="['remove_cell', 'other_tag_to_remove']" --to html
请注意,TagRemovePreprocessor仅在nbconvert 5.3及更高版本中可用:https://nbconvert.readthedocs.io/en/latest/changelog.html?highlight=TagRemovePreprocessor