python怎么实现主动调用其他类成员及组合的补充

1.python怎么实现主动调用其他类成员?

我们可以按照以下方法实现:

方法一:

class Base(object):

    def f1(self):
        print('Base.f1')
class Foo(Base):

    def f1(self):
        print('foo.f1')
        Base.f1(self)

obj = Foo()
obj.f1()

方式二 使用super(),super会按照类的继承顺序,找下一个

class Base(object):

    def f1(self):
        print('Base.f1')
class Foo(Base):

    def f1(self):
        print('foo.f1')
        super().f1()

obj = Foo()
obj.f1()

2.组合的补充

  1.类或者对象能不能做字典的key

class Foo:
    pass

user_info = {
    Foo:1,
    Foo():2
}
# 结果:{<class '__main__.Foo'>: 1, <__main__.Foo object at 0x1021df1d0>: 2}

  以上例子我们能看出类或者对象能做字典的key

 

posted @ 2019-07-03 19:10  沙谷地  阅读(329)  评论(0编辑  收藏  举报