if __name__ == '__main__' 如何正确理解?

来源:互联网 发布:xp系统解压缩软件 编辑:程序博客网 时间:2024/05/14 10:03

if __name__ == '__main__' 如何正确理解?


在很多python脚本中在最后的部分会执行一个判断语句:if __name__ == '__main__',之后还可能会有一些执行语句。那添加这个判断的目的何在?

看下面这个例子:

a.py:

    #!/usr/bin/python      # Filename: a.py            if __name__ == '__main__':          print 'This program is being run by itself'      else:          print 'I am being imported from another module'  

b.py:

    #!/usr/bin/python      # Filename: b.py            import a  

运行:

    $ python2.7 a.py      This program is being run by itself      $ python2.7 b.py      I am being imported from another module  

总结:在if __name__ == "__main__":之后的语句作为模块被调用的时候,语句之后的代码不执行;直接使用的时候,语句之后的代码执行。

通常,此语句用于模块测试中使用。