![](/img/trans.png)
[英]Execute a Jupyter notebook including inline markdown with nbconvert
[英]ignore markdown cells in `jupyter nbconvert` with `--to script`
是否可以让jupyter nbconvert ... --to script
忽略降价单元而不是将它们转换为注释?
我问是因为我想使用flake8
检查生成的 Python 代码,但我不想包含降价单元格(例如,因为它们通常是长行,我不想 flake8 抱怨它们)。
命令行参数PythonExporter.exclude_markdown
您的需求。 要获取仅查看代码单元格的 pep8 错误列表,我运行
jupyter nbconvert my_notebook.ipynb --stdout --to python --PythonExporter.exclude_markdown=True | flake8 - --ignore=W391
这似乎有效:
创建模板strip_markdown.tpl
## remove markdown cells
{% extends 'python.tpl'%}
{% block markdowncell -%}
{% endblock markdowncell %}
jupyter nbconvert my_notebook.ipynb --to python --template=strip_markdown.tpl
如果其他人想用CI检查他们的jupyter笔记本,而nbconvert + pipe
方法对您来说效果不佳(对我而言是如此),我想推广我为此目的编写的工具/ hack。 flake8-nb
我问是因为我想使用 flake8 来检查生成的 Python 代码
$ nbqa flake8 my_notebook.ipynb --extend-ignore=E203,E302,E305,E703
my_notebook.ipynb:cell_3:1:1: F401 'import pandas as pd' imported but unused
它也可以作为预提交钩子,参见https://nbqa.readthedocs.io/en/latest/pre-commit.html
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.