• 接口测试基础——第7篇 Python中_、__、__func__之间的区别


    今天的东西很少,主要是给自己做个笔记,顺便帮大家普及一下Python中的边角知识:

    1、if __name__ == "__main__"是什么意思

    答:一个.py文件,如果是自身在运行,那么他的__name__值就是"__main__";
    如果它是被别的程序导入的(作为一个模块),比如:
    import unittest
    那么,他的__name__就不是"__main__"了。
    所以,在.py文件中使用这个条件语句,可以使这个条件语句块中的命令只在它独立运行时才执行。
    ----来自百度问答

    2、python中_param,__param,__param__的区别

    答:_ 表示该方法或属性是私有的,也就是说你不想让别人编辑,那么就可以把变量设置成为 “_变量名”

    __来避免子类的重写;

    例如:

    class A(object): 
        def __method(self): 
            print "I'm a method in A" 
        def method(self): 
            self.__method()
    a = A()
    print a.method()
    


    输出是这样的:
    I'm a method in A

    我们给A添加一个子类,并重新实现一个__method:

    class A(object): 
        def __method(self): 
            print "I'm a method in A" 
        def method(self): 
            self.__method()
    
    class B(A): 
        def __method(self): 
            print "I'm a method in B" 
    
    b = B() 
    print b.method()
    


    现在,结果是这样的:
    I'm a method in A

    就像我们看到的一样,B.method()不能调用B.__method的方法。实际上,它是"__"两个下划线的功能的正常显示。
    因此,在我们创建一个以"__"两个下划线开始的方法时,这意味着这个方法不能被重写,它只允许在该类的内部中使用。

    __XX__用于python调用或一些特殊情况

    当你看到"__func__"的时,就知道不要调用它。为什么?因为它的意思是它是用于Python调用的,如下:

    name = "param"
    print name.__len__()
    number = 10
    print number.__add__(20)
    

    输出为:

    5
    30
    “xx”经常是操作符或本地函数调用的magic methods。

            原文链接:http://www.cnblogs.com/coder2012/p/4423356.html

    微信公众号搜索“自动化测试实战”或扫描下方二维码添加关注~~~

  • 相关阅读:
    Android 使用ViewPager结合PhotoView开源组件实现网络图片在线浏览功能
    Android教程 -06 Activity的生命周期
    Android教程 -05 Android6.0权限的管理
    Android 设置ImageView宽度固定,其高度按比例缩放适应
    一技压身,天下行走
    解析P2P金融的业务安全
    Android Listview中Button按钮点击事件冲突解决办法
    Android 动态设置TextView的drawableLeft等属性
    Android教程 -04 启动其它Activity,静态工厂设计模式传递数据
    瞬息之间与时间之门
  • 原文地址:https://www.cnblogs.com/captainmeng/p/7735280.html
Copyright © 2020-2023  润新知