python面相对象查漏补缺

self代表类的实例,而非类

类的方法与普通的函数只有一个特别的区别——它们必须有一个额外的第一个参数名称, 按照惯例它的名称是 self。

从执行结果可以很明显的看出,self 代表的是类的实例,代表当前对象的地址,而 self.class 则指向类。self 不是 python 关键字,我们把他换成 其他 也是可以正常执行的:

class Test:
    def __init__(runoob):
        runoob.a = 'a'
    def prt(runoob):
        print(runoob.a)

t = Test()
t.prt()
E:\DataAnalysis\tools\python3\python.exe E:/DataAnalysis/tools/python3/project/money_analysis/text/object_test.py
a

Process finished with exit code 0

继承

需要注意圆括号中基类的顺序,若是基类中有相同的方法名,而在子类使用时未指定,python从左至右搜索 即方法在子类中未找到时,从左到右查找基类中是否包含方法。

猜你喜欢

转载自blog.csdn.net/Da___Vinci/article/details/90634047