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函数,示例如下:
超级会员免费看
订阅专栏 解锁全文

被折叠的 条评论
为什么被折叠?



