21、Python 模块与包的深度解析

Python 模块与包的深度解析

1. 模块主程序检测

在 Python 模块中,可以通过检查全局变量 __name__ 是否为 '__main__' 来判断该模块是否作为主程序运行。常见的用法如下:

if __name__ == '__main__':
    # 这里放置只有在作为主程序运行时才执行的代码
    pass

这种方式常用于保护某些代码,使其仅在模块作为主程序运行时执行。如果一个模块仅用于被导入,那么当它作为主程序运行时,通常应该执行单元测试。

2. 模块重新加载

在程序运行期间,Python 只会在首次导入模块时加载该模块。在交互式开发时,每次编辑模块后都需要显式地重新加载模块(某些开发环境会提供自动重新加载功能)。
- Python 3 :使用 importlib 模块中的 reload 函数,将模块对象(而非模块名)作为唯一参数传入,示例如下:

import importlib
import some_module

importlib.reload(some_module)
  • Python 2 :直接调用内置的 reload 函数,示例如下:
<
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值