如何理解Python中的__name__ == “__main__”是什么?

2020/06/28 19:36 · python教程 ·  原创文章 · 388阅读 · 0评论

Python 中的每个模块都有一个称为__name__的特殊属性。 当模块作为主程序运行时,__name__属性的值设置为'__main__'。 否则,将__name__的值设置为包含模块的名称。

考虑以下代码,以更好地理解。

# file my_module.py

foo = 100

def hello():
    print("i am from my_module.py")

if __name__ == "__main__":
    print("Executing as main program")
    print("Value of __name__ is: ", __name__)
    hello()

在这里,我们定义了一个新模块my_module。 通过输入以下代码,我们可以将该模块作为主程序执行:

python my_module.py

预期输出

Executing as main program
Value of __name__ is: __main__
i am from my_module.py
# file my_module.py

foo = 100

def hello():
    print("i am from my_module.py")

if __name__ == "__main__":
    print("Executing as main program")
    print("Value of __name__ is: ", __name__)
    hello()

在这里,我们正在创建一个新模块并将其作为主程序执行,因此__name__的值设置为'__main__'。 结果,如果条件满足,则函数hello()被调用。

现在创建一个名为module.py的新文件,并编写以下代码:

import my_module

print(my_module.foo)
my_module.hello()

print(my_module.__name__)

预期输出

100
i am from my_module.py
my_module

如您现在所见,由于__name__的值设置为'my_module',因此my_module中的if语句执行失败。

您可能感兴趣的文章

本文地址:http://www.pythongcs.cn/578.html
文章标签: ,   ,   ,  
版权声明:本文为原创文章,版权归 yubaba 所有,欢迎分享本文,转载请保留出处!

文件下载

老薛主机终身7折优惠码boke112

上一篇:
下一篇:

 发表评论


表情