首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在Markdown中运行Python代码

在Markdown中运行Python代码
EN

Stack Overflow用户
提问于 2015-10-16 16:58:30
回答 3查看 15.5K关注 0票数 7

在Markdown文档中有很多关于使用Python代码的信息。但这一切似乎都是为了演示Python代码片段,而不是创建美观的文档。

我不能像R和Markdown那样在单个文档中组合Python和Markdown吗?

MWE:

代码语言:javascript
复制
Output some text from Python in **Markdown**:
```python

从sklearn.datasets导入load_iris

从sklearn导入树

iris = load_iris()

clf = tree.DecisionTreeClassifier()

clf = clf.fit(iris.data,iris.target)

打印(clf.predict_proba(iris.data:1,:))

代码语言:javascript
复制

编译:markdown_py markdown.txt

代码语言:javascript
复制
<p>Output some text from Python in <strong>Markdown</strong>:
<code>python
from sklearn.datasets import load_iris
from sklearn import tree
iris = load_iris()
clf = tree.DecisionTreeClassifier()
clf = clf.fit(iris.data, iris.target)
clf.predict_proba(iris.data[:1, :])</code></p>

它显示代码(很酷),但并不实际运行它。

你不能在Markdown中运行Python代码吗?如果没有,还有其他选择吗?

(使用来自Ubuntu的python-markdown包。)

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2015-10-16 17:08:47

好吧,我找到了一个解决方案:

使用块作为:

代码语言:javascript
复制
<<engine='python', engine.path='python3'>>=
# python code
@

默认情况下,

  • engine.path使用python可执行文件,该文件在大多数Linux系统中仍然是python2。如果你想要Python2,你可以省略它。如果你想省略代码打印输出,
  • 不要忘记传递echo=FALSE,还有results='asis',这样它就不会试图转义输出。

您可以在请求文档时使用以下块来设置默认值:

代码语言:javascript
复制
<<r setup, include=FALSE>>=
knitr::opts_chunk$set(echo=FALSE, engine='whathaveyou', ...)
@

将文件另存为markdown.Rmd,并使用R和compile对其进行编译。它将使用python运行Python代码。

R命令:rmarkdown::render('markdown.Rmd','output.html')

或者直接使用RStudio

附录:一个本机解决方案显然是Pweave:它可以与latex和markdown一起工作。不过,我还没有试过。

票数 3
EN

Stack Overflow用户

发布于 2018-04-11 17:02:11

截至2018年,CRAN-package reticulate提供了更好的解决方案。

“Python”模块、类和函数的接口。当调用“Python”时,R数据类型会自动转换为其等效的“Python”类型。当值从'Python‘返回到R时,它们被转换回R类型。兼容所有版本的'Python‘>= 2.7。

票数 0
EN

Stack Overflow用户

发布于 2022-01-02 18:43:35

Zen knit是Python的RMarkdown的替代品。报告示例位于https://github.com/Zen-Reportz/zen_knit/tree/main/doc/example

它支持直接从python或类似于.Rmd .pyz文件创建报告。

当前功能

  • Python 3.7+ compatibility

  • 支持IPython魔术和丰富的输出。

  • 在块中执行python代码,并将输入和输出捕获到报告中。

  • 使用隐藏代码块,即在输出文件中执行但不打印代码。

  • Capture matplotlib图形。

  • 评估使用`{ }

标记的文档区块中的内联代码

  • 从Python脚本发布报表。类似于R markdown。

使用Plot进行

  • 交互式绘图

  • 将其集成到您的流程中。它将满足您的需要,而不是您需要调整工具。(您可以直接使用python生成报表。示例here)

  • 自定义CSS支持(超文本传输协议和本地文件)
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/33166332

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档