轉自:https://blog.csdn.net/wyr_rise/article/details/82656555
Jupyter notebook中.py與.ipynb文件的import問題
在jupyter notebook中,因為其解析文件的方式是基於json的,所以其默認保存的文件格式不是.py而是.ipynb。而.ipynb文件並不能簡單的import進.py或者.ipynb文件中,這就為開發帶來了極大不便。因為在jupyter notebook中,一定要是在默認的.ipynb下才能有一系列的特性支持,比如自動補全,控制台等待,而.py文件只能通過文本編輯器修改,非常非常不便。
因為.ipynb可以import .py的module,所以其中一個解決方法是將已經寫好的.ipynb格式的module轉換成.py文件。在寫好的.ipynb文件的最后新建一個cell,寫入代碼如下:
try: !jupyter nbconvert --to python file_name.ipynb # python即轉化為.py,script即轉化為.html # file_name.ipynb即當前module的文件名 except: pass
然后在當前目錄下會生成一個同名的.py文件,這個module可以在其他.ipynb中被import。但這樣轉化出的.py文件中有時候會保留上述代碼。如果要完全避免的話,可以專門另寫一個轉換文件,集中存放所有文件的轉換語句。