脚本专栏 
首页 > 脚本专栏 > 浏览文章

jupyter实现重新加载模块

(编辑:jimmy 日期: 2025/3/1 浏览:3 次 )

最近几年,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_module
import importlib
importlib.reload(some_module)

对于 Python3.4+

import some_module
import imp
imp.reload(some_module)

补充知识:jupyter notebook版本更新和降低版本命令

安装更高的版本:

pip install -U "notebook>6.0"

降低版本

pip install -U "notebook<5.0"

以上这篇jupyter实现重新加载模块就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。

上一篇:VS2019+python3.7+opencv4.1+tensorflow1.13配置详解
下一篇:python实现程序重启和系统重启方式
一句话新闻
微软与英特尔等合作伙伴联合定义“AI PC”:键盘需配有Copilot物理按键
几个月来,英特尔、微软、AMD和其它厂商都在共同推动“AI PC”的想法,朝着更多的AI功能迈进。在近日,英特尔在台北举行的开发者活动中,也宣布了关于AI PC加速计划、新的PC开发者计划和独立硬件供应商计划。
在此次发布会上,英特尔还发布了全新的全新的酷睿Ultra Meteor Lake NUC开发套件,以及联合微软等合作伙伴联合定义“AI PC”的定义标准。