欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

python中if __name__ == '__main__'

程序员文章站 2022-05-19 14:23:18
...

python中所有的模块都有一个内置属性 name,一个模块的 name 的值取决于如何应用模块。如果 import 一个模块,那么模块name 的值通常为模块文件名,不带路径或者文件扩展名。但是您也可以像一个标准的程序样直接运行模块,在这 种情况下, name 的值将是一个特别缺省"main"。

换句通俗的话讲,当你直接运行当前文件时,name==main,则其后的代码会正常执行,但是当你在另一个文件import这个文件的时候,此时name!=main,则以下的代码将不会执行。
简单的理解就是加入if name == "main"后,它后面的代码在其它地方引用时,就不执行,从而方便了代码的重用。
示例:add.py如下:

def add(x,y):
    return x+y

if __name__ == "__main__":
    print add(3,4)

当我在其它地方引用这个add.py时,就不执行print。