gpt4 book ai didi

python - 禁止 NBConvert 中的代码? IPython

转载 作者:IT老高 更新时间:2023-10-28 21:17:34 29 4
gpt4 key购买 nike

我已经知道如何抑制大型代码块出现在最终的 NB 转换 (PDF) 输出中。

通过将 LaTex 命令放在“我不想在最终输出中包含的代码之前的原始单元格”中

\iffalse

最后在原始单元格中跟随此

\fi

但是当我需要显示数字等时,这仍然给我留下了一些难看的代码,而笔记本的基本目的是显示带有结果的代码,有时对于非技术观众来说,我们只需要输出......任何想法?

如果有人受到启发,这有点相关.. 有什么方法可以在 Markdown 单元格中包含 python 变量,这样就可以得到带有计算结果的动态文本?对于第二个问题,我很抱歉,但出于某种奇怪的原因,我不确定我是否想单独问这个问题。

最佳答案

要抑制代码单元(仅输入),可以使用自定义模板。与 this question 中讨论的类似,一个模板,例如latex_nocode.tplx 必须使用以下内容创建(在工作目录中)(对于 IPython 1.x)

((*- extends 'latex_article.tplx' -*))
% Disable input cells
((* block input_group *))
((* endblock input_group *))

像这样使用这个模板
ipython nbconvert --to=latex --template=latex_nocode.tplx --post=pdf file.ipynb

也许我应该补充一点,这样输入 block 被一个空白 block 简单地替换(实际上是输入单元格被禁用的 latex 注释)。
在检查预定义的 latex 模板时,可以识别各个 block (代码、 Markdown 、标题等),并且可以设置相应的自定义模板以根据需要设置输出样式。

编辑

正如 user1248490 指出的那样,从 IPython 2.0 开始,要扩展的 latex 模板被称为article.tplxreport.tplxbase.tplx。因此上面的例子应该是这样的

((*- extends 'article.tplx' -*))
% Disable input cells
((* block input_group *))
((* endblock input_group *))

关于python - 禁止 NBConvert 中的代码? IPython,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19524554/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com