Python-模块的特殊属性__name__

  1. 模块的特殊属性__name__

模块的特殊属性__name__

模块的特殊属性__name__在不同情况下的取值
1、对于被导入的模块,其特殊属性__name__的值为模块名。
2、对于直接运行的模块,其特殊属性__name__的值为__main__。

例如:

[root@lyucan ~]# cat mod.py
#!/usr/bin/python3

print('模块__name__的值为:', __name__)

[root@lyucan ~]# cat module.py
#!/usr/bin/python3

import mod


# 直接运行
[root@lyucan ~]# ./mod.py
模块__name__的值为: __main__

#被当做模块导入
[root@lyucan ~]# ./module.py
模块__name__的值为: mod

可以根据__name__的值判断是否执行模块中的测试代码
对于模块中的测试代码,通常当直接运行模块时,才需要运行,而当模块被导入时,则不需要执行。因此,可以根据__name__的值判断是否执行模块中的测试代码

if __name__ == '__main__':
    ...
    ...

转载请注明来源,欢迎对文章中的引用来源进行考证,欢迎指出任何有错误或不够清晰的表达。可以在下面评论区评论,也可以邮件至 289211569@qq.com