作者:exu8145079 | 来源:互联网 | 2022-12-02 12:05
我可以在Markdown Cell Jupyter Notebook中打印变量的值吗?
试过的代码:
value = 5.3
Markdown cell --> Value is {{ value }}
我希望Markdown单元格应显示变量的值
屏幕截图
1> nilansh bans..:
所以在浏览了所有链接之后,我可以通过参考nbextension jupyter notebook文档来解决问题:https : //github.com/ipython-contrib/jupyter_contrib_nbextensions
采取的步骤:
pip安装jupyter_contrib_nbextensions
jupyter contrib nbextension安装--user
jupyter nbextension启用python-markdown / main
在上述命令启动jupyter笔记本并在markdown单元格中打印变量的值后,它的工作原理就像是魅力!
您只需要 在降价单元格中使用{{ac_score}}。
屏幕截图
谢谢!
2> mc51..:
@nilansh bansal的答案非常适合Jupyter Notebooks。不幸的是,它对JupyterLab不起作用,因为不再支持该插件(所有nbextension插件都是这种情况)。自JupyterLab受到欢迎以来,我想补充到目前为止的答案,因为它花了我很多时间才能找到解决方案。这是因为到目前为止,还没有与JupyterLab兼容的插件。通过将这个和这个 SO答案结合起来,我为自己找到了以下解决方案:
from IPython.display import Markdown as md
# Instead of setting the cell to Markdown, create Markdown from withnin a code cell!
# We can just use python variable replacement syntax to make the text dynamic
n = 10
md("The data consists of {} observations. Bla, Bla, ....".format(n))
另外,也可以按照@Igor Forbia对于Python> 3.6的建议简化最后一行:
md(f"The data consists of {n} observations. Bla, Bla, ....")
这导致所需的输出。但是,它具有一个巨大的缺点,即在导出NB时代码单元仍然可见。这可以解决:
在代码单元格中添加标签,即将其命名为“隐藏”
配置nbconvert
忽略标记的单元格,例如通过将其添加c.TagRemovePreprocessor.remove_input_tags = {"hide"}
到~/.jupyter/jupyter_notebook_config.py
配置文件中
我写了一篇详细的博客文章,内容涉及我如何实现此解决方案以在博客上发布笔记本。例如,您可以jupyterlab-celltags
为JupyterLab 安装插件以简化单元格标记。
f字符串表示法也起作用:`md(f“数据由{n}个观测值组成。Bla,Bla等...”)