欢迎来到山村网

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

2019-03-02 14:28:27浏览:75 来源:山村网   
核心摘要:  这篇文章主要介绍了Python中if __name__ =='__main__'作用解析,这断代码在Python中非常常见,它有作用?本文就解析了它的作用,

  这篇文章主要介绍了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__'"都不会成立的!

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

(责任编辑:豆豆)
下一篇:

Python实现把数字转换成中文

上一篇:

一波实用的Bash Shell整理

  • 信息二维码

    手机看新闻

  • 分享到
打赏
免责声明
• 
本文仅代表作者个人观点,本站未对其内容进行核实,请读者仅做参考,如若文中涉及有违公德、触犯法律的内容,一经发现,立即删除,作者需自行承担相应责任。涉及到版权或其他问题,请及时联系我们 xfptx@outlook.com