Python中的自我是什么?如果第二个类继承了另一个类及其方法,那么' self'表示什么?

时间:2016-05-24 07:11:28

标签: python

我很难理解自己。此外,在班级' anotherClass'中,有两个自我。这两个自我指示什么?

class myClass():
    def method1(self):
        print("myClass method1")

class anotherClass(myClass):
    def method1(self):
        myClass.method1(self)
        print("anotherClass method1")

def main():
    c = anotherClass()
    c.method1()

if __name__ == "__main__":
    main()

1 个答案:

答案 0 :(得分:2)

self是调用该方法的实例。

所以,如果你写

c.method1()

然后c作为第一个参数传递给method1

然后你做

myClass.method1(self)

您根本不是在实例上调用方法,而是在类上调用函数。 Self未自动设置,但您“手动”传递,因此仍然引用c