jupyter实现重新加载模块
最近几年,jupyter在全球数据科学领域,已经成为不可或缺的重要工具。
在jupyter中用python写程序,若import了自己写的外部模块,如果这个外部模块有更新,再次执行import,jupyter是不会重新导入的。一般的做法是先restart整个jupyter文档,再重新执行代码,以确保所有导入的外部模块都是最新的。但这种做法太麻烦,效率也不高。
网上搜“jupyterautoreload”,目前搜到的主要是ipython的%load_ext,这在jupyter下并不适用;也搜到了reload,但发现在不同版本的jupyter下也有问题。
现在看来,这个问题虽然简单,但目前网上的solution还不是很容易检索到,所以值得在这里记录一下。
在jupyter下实现模块重新加载(每一次运行import,都导入模块最新的代码),有三种方式:
对于Python2.x
importsome_module
reload(some_module)
对于Python3.2and3.3:
importsome_module importimportlib importlib.reload(some_module)
对于Python3.4+
importsome_module importimp imp.reload(some_module)
补充知识:jupyternotebook版本更新和降低版本命令
安装更高的版本:
pipinstall-U"notebook>6.0"
降低版本
pipinstall-U"notebook<5.0"
以上这篇jupyter实现重新加载模块就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持毛票票。