ITPub博客

首页 > 应用开发 > Python > Python中if __name__ == '__main__'作用解析

Python中if __name__ == '__main__'作用解析

Python 作者:WOSHI太阳 时间:2021-01-26 22:46:36 0 删除 编辑

这篇文章主要介绍了Python中if __name__ == '__main__'作用解析,这断代码在Python中非常常见,它有作用?本文就解析了它的作用,需要的朋友可以参考下

  当你打开一个.py文件时,经常会在代码的最下面看到if __name__ == '__main__':,现在就来介 绍一下它的作用.

  模块是对象,并且所有的模块都有一个内置属性 __name__。一个模块的 __name__ 的值取决于您如何应用模块。如果 import 一个模块,那么模块__name__ 的值通常为模块文件名,不带路径或者文件扩展名。但是您也可以像一个标准的程序样直接运行模块,在这 种情况下, __name__ 的值将是一个特别缺省"__main__"。

  ///////////////////////////////////////////////////////////////////////////////////////////////////

  在cmd 中直接运行.py文件,则__name__的值是'__main__';

  而在import 一个.py文件后,__name__的值就不是'__main__'了;

  从而用if __name__ == '__main__'来判断是否是在直接运行该.py文件

  如:

   代码如下:

  #Test.py

  class Test:

  def __init(self):pass

  def f(self):print 'Hello, World!'

  if __name__ == '__main__':

  Test().f()

  #End

  你在cmd中输入:

   代码如下:

  C:> python Test.py

  Hello, World!

  说明:"__name__ == '__main__'"是成立的

  你再在cmd中输入:

   代码如下:

  C:>python

  >>>import Test

  >>>Test.__name__ #Test模块的__name__

  'Test'

  >>>__name__ #当前程序的__name__

  '__main__'

  无论怎样,Test.py中的"__name__ == '__main__'"都不会成立的!

  所以,下一行代码永远不会运行到!


来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/69994010/viewspace-2753482/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2021-01-26

  • 博文量
    12
  • 访问量
    7189