学习东西真的需要自己动手,然后遇到问题,自己学着去解决。当然如果能得到高人指点,那真是走了八辈子运了。可以节省很多时间。但是大多数情况下,不能总是有高人来指点我们。这时就需要靠我们自己了。

在学习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__":】的更多相关文章

  1. python 中if __name__ = '__main__' 的作用

    python 中if __name__ = '__main__' 的作用 前言 首先我们要知道在python里面万物皆对象,模块也是对象,并且所有的模块都有一个内置属性 __name__. 一个模块的 ...

  2. 【Python】if __name__ == "__main__"做了什么?

    在Python的很多源文件中,会有这样的语句: if __name__ == '__main__': # script code here 比如有两个源文件A.py和B.py,都有上面的代码:在B.p ...

  3. python中if __name__ == '__main__': 的解析

    当你打开一个.py文件时,经常会在代码的最下面看到if __name__ ==  '__main__':,现在就来介 绍一下它的作用. 模块是对象,并且所有的模块都有一个内置属性 __name__.一 ...

  4. python中if __name__ == '__main__'

    python 中__name__ = '__main__' 的作用,到底干嘛的? 有句话经典的概括了这段代码的意义: “Make a script both importable and execut ...

  5. Python中if __name__ == "__main__": 的作用

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

  6. python基础之python中if __name__ == '__main__': 的解析

    当你打开一个.py文件时,经常会在代码的最下面看到if __name__ == '__main__':,现在就来介 绍一下它的作用. 模块是对象,并且所有的模块都有一个内置属性 __name__.一个 ...

  7. FAQ: Python中if __name__ == '__main__':作用

    #hello.pydef sayHello(): str="hello" print(str); if __name__ == "__main__": prin ...

  8. 【Python中if __name__ == '__main__': 的解析】

    在很多Python代码中,在代码的最下方会看到  if __name__ == '__main__':,这段代码到底有什么用呢? 在理解这个语句的作用前,需要知道的是,一般的Python文件后缀为.p ...

  9. Python中if __name__=="__main__" 语句在调用多进程Process过程中的作用分析

    2018年2月27日 于创B515 引言 最近准备学习一下如何使用Python中的多进程.在翻看相关书籍.网上资料时发现所有代码都含有if __name__=="__main__" ...

  10. Python中if __name__ == "__main__": 的理解

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

随机推荐

  1. 通过Nginx反向代理,IIS和apache 共用80端口

    #user nobody; worker_processes ; #error_log logs/error.log; #error_log logs/error.log notice; #error ...

  2. PHP对HTML代码尸体编码2个函数

    1.htmlspecialchars() 函数把一些预定义的字符转换为 HTML 实体. 2.htmlentities() 函数把字符转换为 HTML 实体. 记录下

  3. application/x-www-form-urlencoded 的contentType,POST数据内容过大,导致tomcat的request取不到参数

    如题, 可通过设置tomcat的connector的参数 server.xml中的connector中加上属性 maxPostSize="20971520" maxPostSize ...

  4. linux中高亮显示文本的工具 -- bat

    bat 的项目地址 https://github.com/sharkdp/bat bat 是用rust 开发的, 在centos中安装bat需要rust的环境, 我们可以通过安装rust的包管理工具c ...

  5. 一个日志模板,从traceback打印异常受启发做的模板,可被pycharm esclip 等ide识别和跳转

    之前发过日志,再增加一种模板. logging.Formatter('%(asctime)s - %(name)s - File "%(pathname)s", line %(li ...

  6. trim思考

    今天发现后台订单商品名称没有的时候出现了HTML代码,然后看了一下源代码(下图是简化版本的) <?php $name = trim('<span style="font-weig ...

  7. Mybatis数据库连接报错:对实体 "characterEncoding" 的引用必须以 ';' 分隔符结尾

    Mybatis数据库连接报错:对实体 "characterEncoding" 的引用必须以 ';' 分隔符结尾 ============================== 蕃薯耀 ...

  8. 解决select2在modal中无法输入的问题

    解决办法: 在js里加一句 $.fn.modal.Constructor.prototype.enforceFocus = function(){};

  9. java中调用groovy

    Groovy在Java中的应用,做几个小例子以备查 package com.boco.efficiency.groovy; import groovy.lang.Binding; import gro ...

  10. Linux下用C获取当前时间

    Linux下用C获取当前时间,具体如下: 代码(可以把clock_gettime换成time(NULL)) ? 1 2 3 4 5 6 7 8 9 10 void getNowTime() {  ti ...