Tag:

使用超级类的方法

我想学习Python中的super()函数。 虽然我已经掌握了它,直到我通过这个例子(2.6),发现自己卡住了。 http://www.cafepy.com/article/python_attributes_and_methods/python_attributes_and_methods.html#super-with-classmethod-example Traceback (most recent call last): File "<stdin>", line 1, in <module> File "test.py", line 9, in do_something do_something = classmethod(do_something) TypeError: unbound method do_something() must be called with B instance as first argument (got nothing instead) >>> 当我在这个例子之前阅读这一行时,并不是我所期望的: 如果我们使用一个类方法,我们没有一个实例来调用super。 幸运的是,对于我们来说,super甚至可以使用types作为第二个参数。 —types可以直接传递给super,如下所示。 这正是Python告诉我的,说do_something()应该用B的一个实例调用是不可能的。 提前致谢

什么是PECS(生产者扩大消费者超级)?

在阅读generics时,我遇到了PECS( Producer extends和Consumer super )。 有人可以向我解释如何使用PECS解决extends和super之间的混淆?