zoukankan      html  css  js  c++  java
  • python3 __mian和__name__的区别

    1、新建 test.py 模块:

    def  GetModuleName():
        print('__name__ = ', __name__)
    
    def PrintName():
        print('PrintName:', 'Andy')
    
    if __name__ == '__main__':
        GetModuleName()
        PrintName()

    运行结果:

    __name__ =  __main__
    PrintName: Andy

    2、新建 Demo.py 模块 

    import  test
    def Demo():
      print('__name__ = ',__name__)
    
    if __name__ == '__main__':
        Demo()
        print('test.py __name__ = ',test.__name__)

    输出:

    __name__ =  __main__
    test.py __name__ =  test

    总结:

    1、__name__是一个系统变量,用来标识模块的名字。

    2、__name__ == '__main__'的意思:

         a) 当 python 文件被直接运行的时候,__name__的值为’__main__’  ,

             if __name__ == '__main__' 之下的代码将被运行。

         b) 当 python 文件以模块形式被导入时,__name__的值为该模块名字

             if __name__ == '__main__' 之下的代码块不被运行。

    通过这个特性可以在if语句里面添加测试代码,可以提高减少bug,提高程序的可行性。

  • 相关阅读:
    BZOJ1477 青蛙的约会
    Code Style
    线段树合并
    动态开点
    主席树
    启发式合并
    树的重心
    树的直径
    扩展欧几里得
    裴蜀定理
  • 原文地址:https://www.cnblogs.com/AndyChen2015/p/11412889.html
Copyright © 2011-2022 走看看