系列文章目录
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模块实现,希望能帮助到各位。