学习目标
理解
__name__
变量的含义和作用掌握
if __name__ == "__main__"
的用法和最佳实践学会如何组织模块化代码,避免不必要的副作用
背景知识
在Python中,所有的代码都是以模块的形式组织的。一个.py
文件就是一个模块。当你运行一个Python脚本时,它的__name__
变量会被设置为"__main__"
。而当它被其他模块导入时,__name__
的值则是该模块的名称。
这意味着,你可以通过判断__name__
的值,来决定某段代码是否只在该模块被直接执行时才运行,而在被导入时不执行。
场景分析
我们来看一个简单的例子:
script1.py
def do_stuff():
print('Doing stuff')
do_stuff()