Python中的 if __name__ == ‘__main__‘:

一.   if __name__ == '__main__':的作用

 if __name__ == '__main__':的作用其实是用来判断运行的程序是否是主程序。

                具体来说就是当一个python文件被直接运行时,其内置变量__name__ 的值就会被设置成'__main__',当这个文件被另一个文件作为模块使用时,__name__的值就会被设置成这个文件的模块名。


# mymodule.py

def my_function():
    print("Hello from my_function!")

if __name__ == '__main__':
    # 这里的代码只有在直接运行 mymodule.py 时才会执行
    print("mymodule.py is being run directly")
    my_function()
else:
    # 这里的代码只有在 mymodule.py 被导入为模块时才会执行(但在这个例子中不会执行)
    print("mymodule.py has been imported into another module")

这段代码直接运行输出将是:

mymodule.py is being run directly
Hello from my_function!

 但是,当在另一个文件里面导入这个文件时。

# anothermodule.py

import mymodule

mymodule.my_function()

输出的代码就是:

Hello from my_function!

说白了就像c语言,让其他程序都要在这个主程序里面调用运行。

你可能感兴趣的:(python)