时间:2021-05-22
最近几年,jupyter在全球数据科学领域,已经成为不可或缺的重要工具。
在jupyter中用python写程序,若import了自己写的外部模块,如果这个外部模块有更新,再次执行import,jupyter是不会重新导入的。一般的做法是先restart整个jupyter文档,再重新执行代码,以确保所有导入的外部模块都是最新的。但这种做法太麻烦,效率也不高。
网上搜“jupyter auto reload”,目前搜到的主要是ipython的%load_ext,这在jupyter下并不适用;也搜到了reload,但发现在不同版本的jupyter下也有问题。
现在看来,这个问题虽然简单,但目前网上的solution还不是很容易检索到,所以值得在这里记录一下。
在jupyter下实现模块重新加载(每一次运行import,都导入模块最新的代码),有三种方式:
对于 Python2.x
import some_module
reload(some_module)
对于 Python 3.2 and 3.3:
import some_moduleimport importlibimportlib.reload(some_module)对于 Python3.4+
import some_moduleimport impimp.reload(some_module)补充知识:jupyter notebook版本更新和降低版本命令
安装更高的版本:
pip install -U "notebook>6.0"
降低版本
pip install -U "notebook<5.0"
以上这篇jupyter实现重新加载模块就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
问题你想重新加载已经加载的模块,因为你对其源码进行了修改。解决方案使用imp.reload()来重新加载先前加载的模块。举个例子:>>>importspam>>
reload()简介作用:用于重新载入之前载入的模块语法格式:reload(module)参数:module为模块对象,必须已经被加载返回值:返回模块对象注意事
先给大家说下我的需求,如下:点击左侧已经打开的tab可以刷新重新加载datagrid。也就是说解决easyui左侧tab重新刷新加载问题实现。实现如下:func
前言SeaJS是一个遵循CommonJS规范的JavaScript模块加载框架,可以实现JavaScript的模块化开发及加载机制。与jQuery等JavaSc
本文实例讲述了Python实现动态加载模块、类、函数的方法。分享给大家供大家参考,具体如下:动态加载模块:方式1:系统函数__import__()方式2:imp