我在一个.ipynb文件中有一些代码,并且我已经不需要IPython Notebook的“交互”特性了。我想直接从Mac终端命令行运行它。
基本上,如果这只是一个.py文件,我相信我可以从命令行执行python filename.py。对于.ipynb文件是否也有类似的东西?
我在一个.ipynb文件中有一些代码,并且我已经不需要IPython Notebook的“交互”特性了。我想直接从Mac终端命令行运行它。
基本上,如果这只是一个.py文件,我相信我可以从命令行执行python filename.py。对于.ipynb文件是否也有类似的东西?
当前回答
您可以从.ipynb导出所有代码,并将其保存为.py脚本。然后可以在终端中运行脚本。
希望能有所帮助。
其他回答
您还可以使用野猪包在python代码中运行您的笔记本。
from boar.running import run_notebook
outputs = run_notebook("nb.ipynb")
如果你更新了你的笔记本,你不需要再次将它转换为python文件。
更多信息请浏览:
https://github.com/alexandreCameron/boar/blob/master/USAGE.md
Nbconvert允许你使用——execute标志运行笔记本:
jupyter nbconvert --execute <notebook>
如果你想运行一个笔记本并生成一个新的笔记本,你可以添加——到笔记本:
jupyter nbconvert --execute --to notebook <notebook>
或者如果你想用新的输出替换现有的笔记本:
jupyter nbconvert --execute --to notebook --inplace <notebook>
因为这是一个非常长的命令,你可以使用别名:
alias nbx="jupyter nbconvert --execute --to notebook"
nbx [--inplace] <notebook>
更新引用作者的评论,以获得更好的可视性:
作者注:“这个项目开始于Jupyter的执行API之前,这是现在从命令行运行笔记本的推荐方式。考虑runipy已弃用且无法维护。”——塞巴斯蒂安·帕尔马
安装允许在终端上运行代码的runipy库
pip install runipy
编译代码后:
runipy <YourNotebookName>.ipynb
你也可以试试cronjob。所有信息都在这里
对于新版本,而不是:
ipython nbconvert --to python <YourNotebook>.ipynb
你可以用jupyter代替ipython:
jupyter nbconvert --to python <YourNotebook>.ipynb
您可以从.ipynb导出所有代码,并将其保存为.py脚本。然后可以在终端中运行脚本。
希望能有所帮助。