关于python的【if __name__ == "__main__":】
学习东西真的需要自己动手,然后遇到问题,自己学着去解决。当然如果能得到高人指点,那真是走了八辈子运了。可以节省很多时间。但是大多数情况下,不能总是有高人来指点我们。这时就需要靠我们自己了。
在学习python 的关于对象编程的时候,就解决了一个以前很久没有解决的问题。之前也 一直在查资料,但是看来看去,自己没有真实的体会 ,还真是很难感觉到他的作用。
问题就是很多python程序里面都有这句话:if __name__ == "__main__":
其实当你写一个小程序的时候,这句话根本有没什么作用,所以有时候我们摸不着头脑,我写这句话到底干嘛啊。所以慢慢的学着学着,你开始写了两个文件的程序,一个文件调用另一个文件中的模块,这样可以节省我们的开发时间,就像这样:
import class_study #从其他文件中导入基类
class people_1(class_study.man):
def __init__(self,name,age1):
class_study.man.__init__(self,name) #注意引用的格式
self.name = name
self.age1 = age1
tom = people_1('tom',23)
print tom.gender,tom.name,tom.age1
这段代码,我 引用了class_study文件里面的man类,然后继承他,写完之后,我只想输出他的gender和name,age1,但是我发现怎么给我输出了这么一大坨东东。。。

然而红色框框里面才是我想要的输出,那么前面的输出是什么,感觉怎么这么熟悉呢。原来上面的输出是我在class_study文件里面的实验输出,在这里我不想输出,那么怎么办呢?
这个时候就体现了【if __name__ == "__main__":】的作用。
他的意思就是说,当你单独运行这个程序的时候,执行这句话下面的语句,当然,这句话上面的语句也会被执行,但是当其他文件引用本模块 的时候,这句话下面的语句就不会被执行了。只要 上面的功能模块。
改好之后是这个样子的:

可以看到上面的那一坨没有输出了。yes!!!
关于python的【if __name__ == "__main__":】的更多相关文章
- python 中if __name__ = '__main__' 的作用
python 中if __name__ = '__main__' 的作用 前言 首先我们要知道在python里面万物皆对象,模块也是对象,并且所有的模块都有一个内置属性 __name__. 一个模块的 ...
- 【Python】if __name__ == "__main__"做了什么?
在Python的很多源文件中,会有这样的语句: if __name__ == '__main__': # script code here 比如有两个源文件A.py和B.py,都有上面的代码:在B.p ...
- python中if __name__ == '__main__': 的解析
当你打开一个.py文件时,经常会在代码的最下面看到if __name__ == '__main__':,现在就来介 绍一下它的作用. 模块是对象,并且所有的模块都有一个内置属性 __name__.一 ...
- python中if __name__ == '__main__'
python 中__name__ = '__main__' 的作用,到底干嘛的? 有句话经典的概括了这段代码的意义: “Make a script both importable and execut ...
- Python中if __name__ == "__main__": 的作用
在很多python脚本中在最后的部分会执行一个判断语句if __name__ == "__main__:",之后还可能会有一些执行语句.那添加这个判断的目的何在? 在python编 ...
- python基础之python中if __name__ == '__main__': 的解析
当你打开一个.py文件时,经常会在代码的最下面看到if __name__ == '__main__':,现在就来介 绍一下它的作用. 模块是对象,并且所有的模块都有一个内置属性 __name__.一个 ...
- FAQ: Python中if __name__ == '__main__':作用
#hello.pydef sayHello(): str="hello" print(str); if __name__ == "__main__": prin ...
- 【Python中if __name__ == '__main__': 的解析】
在很多Python代码中,在代码的最下方会看到 if __name__ == '__main__':,这段代码到底有什么用呢? 在理解这个语句的作用前,需要知道的是,一般的Python文件后缀为.p ...
- Python中if __name__=="__main__" 语句在调用多进程Process过程中的作用分析
2018年2月27日 于创B515 引言 最近准备学习一下如何使用Python中的多进程.在翻看相关书籍.网上资料时发现所有代码都含有if __name__=="__main__" ...
- Python中if __name__ == "__main__": 的理解
1.在很多python脚本中在最后的部分会执行一个判断语句if __name__ == "__main__:",之后还可能会有一些执行语句.那添加这个判断的目的何在? 在pytho ...
随机推荐
- 在ListView中使用GridView, Style这样写:
参考:http://msdn.microsoft.com/zh-cn/library/vstudio/ms788747.aspx 需求,自定义ListView中的滚动条 这岂不是很简单?刷刷刷写完了, ...
- Eclipse------启动Server时出现弹窗Server at localhost was unable to start within 45 seconds.
弹窗详细信息: Server Tomcat v8. Server at localhost was unable to start within seconds. If the server requ ...
- PHP从数组中找到指定元素的位置
群里有人问,有个数组五个元素 分为1到5 现在要求 循环找出3元素的索引,怎么做性能才是最高. 我不知道哪个性能最高,但是我想提出可以用多种方式进行查找,然后进行比较选择. 我想,最简单最基础的 应 ...
- 在 Ubuntu 13.10 安装 PyCharm 3.0.1 & Oracle JDK
由于授权问题,在较新的Linux发行版本中都不再包含Oracle Java,取而代之的是OpenJDK.Ubuntu也是如此. OpenJDK能满足大部分的应用程序运行条件,但PyCharm无法在Op ...
- Kafka与Flink集成
Apache Flink是新一代的分布式流式数据处理框架,它统一的处理引擎既可以处理批数据(batch data)也可以处理流式数据(streaming data).在实际场景中,Flink利用Apa ...
- iOS中UIView翻转效果实现
本文转载至 http://baishiyun.blog.163.com/blog/static/13057117920148228261747/ 新建一个view-based模板工程,在ViewCo ...
- opencv3——ANN算法的使用
最近刚转用opencv3,使用ANN算法时遇到了一些问题,记录下来. 训练神经网络的代码如下: //创建ANN Ptr<ANN_MLP> bp = ANN_MLP::create(); 设 ...
- 合格PHP工程师的知识结构
摘自http://www.cnblogs.com/ftx5410/p/7204672.html 一下子就想了这么多,后续想到了再补,请大家多多指教.其实编程使用什么语言不重要,最重要的是思想,编程的思 ...
- .net 取得类的属性、方法、成员及通过属性名取得属性值
//自定义的类 model m = new model(); //取得类的Type实例 //Type t = typeof(model); //取得m的Type实例 Type t = m.GetTyp ...
- 【加解密专辑】对接触到的PGP、RSA、AES加解密算法整理
先贴代码,有空再整理思路 PGP加密 using System; using System.IO; using Org.BouncyCastle.Bcpg; using Org.BouncyCastl ...