python模块开发调试时的重新加载

文章介绍了在Python开发中如何使用sys.path.append添加模块路径,并详细讲解了模块的加载、缓存机制以及如何通过删除sys.modules中的缓存来实现模块的重新加载,以适应调试需求。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

系列文章目录

python开发时sys.path.append引用模块相关方法



前言

在开发调试python模块时,我个人通常喜欢使用notebook引用加载模块并调试,这样可以通过notebook交互地快速查看模块使用情况。但往往涉及到一个问题,即模块在调试后的重新加载,在不知道该方法前我往往重新把整个notebook重跑一遍,非常之蠢。

本文展示通过sys模块进行模块重新加载的方法,希望能帮助各位。


一、模块路径

该文章内记录了使用sys进行模块加载的方法。使用sys.path, 里面包含了已经添加到系统的环境变量路径,用于记录所需import模块的路径。

本文使用以下的路径

A
	B
		C.py
	D
		E.py

使用以下代码进行路径载入, 加载A的路径

import sys
sys.path.append(r'A的绝对路径')

二、模块的加载与缓存去除

1.模块加载

加载模块C,有以下两种方法

from B import C

# 或者使用以下
import B.C as C_alias

2.缓存去除

当已经加载过相关模块后,若需要加载更新后的模块,需要去除之前加载过的缓存。若直接进行模块加载,该模块已经在sys.modules下,会直接跳过,模块不能得到更新。

if 'B.C' in sys.modules:
	del sys.modules['B.C']

在去除缓存后,再次加载模块,即为最新的版本。

from B import C

# 或者使用以下
import B.C as C_alias

总结

本文主要介绍了如何进行模块调整开发时的重新加载,主要使用sys模块实现,希望能帮助到各位。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值