python __name__与__main__深刻理解(涵详细解释、应用场景、代码举例、高级用法)
python __name__与__main__深刻理解(涵详细解释、应用场景、代码举例、高级用法):
一、__name__
的核心作用
__name__
是 Python 的内置属性,用于标识当前模块的执行环境,其值取决于模块是被直接运行 还是被导入 到其他模块中:
- 直接运行 :当模块作为主程序执行时,
__name__
的值为"__main__"
。 - 被导入 :当模块被其他脚本导入时,
__name__
的值为模块的文件名(不含.py
后缀)。
二、典型应用场景
1. 隔离测试代码与功能代码
当模块包含测试代码时,使用 if __name__ == '__main__'
可防止测试逻辑在被导入时自动执行。
示例 :
# utils.py
def add(a, b):
return a + b
# 测试代码(仅在直接运行时执行)
if __name__ == '__main__':
print(a