我知道有一些问题,但我没有发现任何足够强大的。
目前,我正在使用一个命令,从终端创建.py,然后将它们移动到另一个文件夹:

jupyter nbconvert --to script '/folder/notebooks/notebook.ipynb' &&  \
mv ./folder/notebooks/*.py ./folder/python_scripts && \

然后,工作流程是在笔记本中编写代码,使用git status检查自上次提交以来发生的更改,创建大量的nbconvert命令,然后将它们全部移动。
我想使用类似于!jupyter nbconvert --to scriptfoundin this answer的内容,但是没有将python文件打包的单元格出现在.py本身中。
因为如果那一行出现,我的代码就永远无法正常工作。
那么,有没有正确的方法来处理这个问题呢?一种可以自动执行的方法,不需要手动复制文件名、创建命令、执行然后重新启动。

最佳答案

您可以在笔记本文件的最后一个单元格中添加以下代码。

!jupyter nbconvert --to script mycode.ipynb
with open('mycode.py', 'r') as f:
    lines = f.readlines()
with open('mycode.py', 'w') as f:
    for line in lines:
        if 'nbconvert --to script' in line:
            break
        else:
            f.write(line)

它将生成.py文件,然后从中删除这段代码。您将得到一个干净的脚本,不再调用!jupyter nbconvert

10-07 15:00