我知道有一些关于此的问题,但我还没有发现任何足够可靠的问题。
目前我在终端使用一个创建 .py 的命令,然后将它们移动到另一个文件夹:
jupyter nbconvert --to script '/folder/notebooks/notebook.ipynb' && \
mv ./folder/notebooks/*.py ./folder/python_scripts && \
接下来的工作流程是在笔记本中编写代码,使用 git status
检查自上次提交以来发生的变化,创建可能大量的 nbconvert
命令,然后将它们全部移动.
我想使用像 !jupyter nbconvert --to script
found in 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
。
关于python - 自动将 jupyter notebook 转换为 .py,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57373744/