Reputation: 319
I was wondering if their is anyway to go through and make copies of each .ipynb file in a folder and then change that file to .py. I want to keep the .ipynb files but I would like to have a .py file as well. I know how to do it manually but would like a way to do it automatically for each file in a specified directory.
Upvotes: 4
Views: 2234
Reputation: 385
To convert all .ipynb files to .py in a directory structure recursively you may execute
find . -name "*.ipynb" -exec jupyter nbconvert --to script {} \;
Upvotes: 0
Reputation: 41
import os
directory = 'ipynb PATH'
for subdir, dirs, files in os.walk(directory):
for file in files:
if os.path.splitext(file)[1] == '.ipynb':
exe_command = 'jupyter nbconvert "{}" --to python'.format(''.join(os.path.join(subdir, file)))
# print the command`enter code here`
# print (exe_command)
os.system(exe_command)
# Delete the file
# os.remove(''.join(os.path.join(subdir, file)))
else:
continue
Upvotes: 4
Reputation: 539
Just try this at Cmd prompt inside that folder.
jupyter nbconvert *.ipynb --to script
Converts all .ipynb files to .py and retains all .ipynb files as well.
Hope it helps
For more details, Check this link as well Save .ipynb to .py automatically on saving notebook
Upvotes: 5
Reputation: 13599
find . -name "*.py" -exec ipython nbconvert --to=python {} \;
should work on Linux.
Upvotes: 4