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

作者:junjie 时间:2021-04-14 09:02:42 

当你打开一个.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,if,name,main,作用
0
投稿

猜你喜欢

  • python实现简单日志记录库glog的使用

    2023-01-07 23:14:40
  • Python和php通信乱码问题解决方法

    2023-03-04 14:50:43
  • Python采集大学教务系统成绩单实战示例

    2021-05-13 23:14:43
  • python中 * 的用法详解

    2023-06-22 20:05:43
  • 巧用Dreamweaver制作复杂图像

    2010-09-02 12:34:00
  • 什么样的图标更具有可用性

    2007-10-16 17:47:00
  • python使用plot绘制未来15天气温折线图

    2022-11-06 02:09:41
  • ASP连接Access数据库和SQL server数据库的方法

    2007-08-22 13:16:00
  • Python中的装饰器使用

    2023-05-25 13:14:09
  • python设置中文界面实例方法

    2023-08-30 18:56:30
  • python字符串查找函数的用法详解

    2022-12-09 11:32:47
  • Python编程实现凯撒密码加密示例

    2021-04-22 01:58:56
  • Python:Scrapy框架中Item Pipeline组件使用详解

    2021-04-18 22:22:47
  • SQL Server 2005中利用xml拆分字符串序列

    2009-01-06 11:30:00
  • selenium+python配置chrome浏览器的选项的实现

    2022-06-24 11:56:31
  • 几个常用的js小函数

    2007-09-19 12:59:00
  • Python urllib库的使用指南详解

    2021-07-08 20:50:57
  • Python Socket编程详细介绍

    2021-01-02 02:56:21
  • python爬虫 正则表达式使用技巧及爬取个人博客的实例讲解

    2023-11-06 02:16:54
  • 详解pandas绘制矩阵散点图(scatter_matrix)的方法

    2022-06-09 18:52:34
  • asp之家 网络编程 m.aspxhome.com