我正在考虑使用*。Ipynb文件作为真相的来源,并以编程方式将它们“编译”为.py文件,用于计划的作业/任务。
我所理解的做到这一点的唯一方法是通过GUI。有没有办法通过命令行来实现?
我正在考虑使用*。Ipynb文件作为真相的来源,并以编程方式将它们“编译”为.py文件,用于计划的作业/任务。
我所理解的做到这一点的唯一方法是通过GUI。有没有办法通过命令行来实现?
当前回答
如果你不想每次保存时都输出一个Python脚本,或者你不想重新启动IPython内核:
在命令行中,你可以使用nbconvert:
$ jupyter nbconvert --to script [YOUR_NOTEBOOK].ipynb
作为一种技巧,您甚至可以通过预先挂起在IPython笔记本中调用上述命令!(用于任何命令行参数)。在笔记本里:
!jupyter nbconvert --to script config_template.ipynb
在添加——to脚本之前,选项是——to python或——to=python,但在转向语言无关的笔记本系统时,它被重命名了。
其他回答
您可以从IPython API完成此操作。
from IPython.nbformat import current as nbformat
from IPython.nbconvert import PythonExporter
filepath = 'path/to/my_notebook.ipynb'
export_path = 'path/to/my_notebook.py'
with open(filepath) as fh:
nb = nbformat.reads_json(fh.read())
exporter = PythonExporter()
# source is a tuple of python source code
# meta contains metadata
source, meta = exporter.from_notebook_node(nb)
with open(export_path, 'w+') as fh:
fh.writelines(source)
如果你不想每次保存时都输出一个Python脚本,或者你不想重新启动IPython内核:
在命令行中,你可以使用nbconvert:
$ jupyter nbconvert --to script [YOUR_NOTEBOOK].ipynb
作为一种技巧,您甚至可以通过预先挂起在IPython笔记本中调用上述命令!(用于任何命令行参数)。在笔记本里:
!jupyter nbconvert --to script config_template.ipynb
在添加——to脚本之前,选项是——to python或——to=python,但在转向语言无关的笔记本系统时,它被重命名了。
%notebook foo。ipynb magic命令将当前IPython导出到“foo.ipynb”。
更多信息输入%笔记本?
我知道这是一个老话题了。我也遇到过同样的问题,想通过命令行将.pynb文件转换为.py文件。
我的搜索把我带到了ipynb-py-convert
通过以下步骤,我能够得到.py文件
安装pip Install ipynb-py-convert 通过命令提示符进入ipynb文件所在目录 输入命令
ipynb-py-convert你的文件名。ipynb YourFilename.py
如:。ipynb-py-convert getting-started-with-kaggle-titanic-problem。ipynb getting-started-with-kaggle-titanic-problem.py
上面的命令将创建一个名为“YourFileName.py”的python脚本,根据我们的示例,它将创建一个“getting-start -with-kaggle-titanic-problem.py”文件
使用nbconvert 6.07和jupyter client 6.1.12:
转换jupyter笔记本到python脚本
$ jupyter nbconvert mynotebook.ipynb --to python
转换jupyter笔记本到python脚本指定输出文件名
$ jupyter nbconvert mynotebook.ipnb --to python --output myscript.py