Jupyter Notebook Markdown 和围栏代码块

sdb*_*bbs 5 markdown ipython jupyter-notebook

我正在尝试这个 Markdown 文本:

Hello, this should just be a paragraph, and there should be a test of Markdown fenced code block with backticks below:

```
Hello there
This should be in
a code block
```
Run Code Online (Sandbox Code Playgroud)

...在 Jupyter 笔记本 Markdown 单元中:

jupyter笔记本Markdown单元代码

...这实际上表现得很好:

Jupyter Notebook Markdown 单元格渲染


现在我想做同样的事情,但我想将源文本存储在Python字符串变量中,然后用IPython.display.Markdown()它来转换它;所以我有这个代码:

from IPython.display import display
from IPython.display import Markdown as md, Javascript, HTML

mdstr="""
Hello, this should just be a paragraph, and there should be a test of Markdown fenced code block with backticks:

```
Hello there
This should be in
a code block
```
"""

display(md(mdstr))
Run Code Online (Sandbox Code Playgroud)

...然而,这呈现如下:

jupyter笔记本 python cell markdown

...从屏幕截图中可以看出,现在开头段落和代码块之间缺少垂直空间。

那么,如何获得与Jupyter 笔记本 Markdown 单元格中的 Markdown 文本完全相同的输出- 段落和代码块之间有垂直空间?IPython.display.Markdown

或者 - 如果无法使用IPython.display.Markdown,我还有哪些其他选项可以在 Python 字符串中定义 Markdown 文本,然后使用相同的 Markdown 输入字符串生成与 Jupyter Markdown 单元生成的内容完全相同的输出?

reh*_*qds 1

使用空行作为代码块的第一行,显示将类似于预期的内容。

mdstr="""
Hello, this should just be a paragraph, and there should be a test of Markdown fenced code block with backticks:

```

Hello there
This should be in
a code block
```
"""
Run Code Online (Sandbox Code Playgroud)