-
0 votesanswersviews
superclass.method(object,parms)有什么问题?
说我有这个示例代码,我正在为我正在举行的Python课程编写代码: class Enum(dict): def __init__(self, *values): values = {mnemo: num for num, mnemo in enumerate(values)} dict.__init__(self, values) # ← this def __... -
1 votesanswersviews
Swift继承v.s调用超级
我正在学习Swift编程语言的以下章节: 如果您的子类没有定义任何指定的初始值设定项,它会自动继承其所有超类指定的初始值设定项 . 然后我在目标中尝试了这些代码: class Car { var name: String = "Unknown" init(name: String) { self.name = name } } cla... -
4 votesanswersviews
python:super() - 类似于在指定类中启动MRO搜索的代理对象
根据文档, super(cls, obj) 返回 一个代理对象,它将方法调用委托给类型为cls的父类或兄弟类 我理解为什么 super() 提供了这个功能,但我需要稍微不同的东西:我需要创建一个代理对象,将方法调用(和属性查找)委托给类 cls 本身;和 super 一样,如果 cls 没有实现方法/属性,我的代理应该继续查看MRO顺序(新的而不是原始类) . 有没有我能写的功能可以达到这个目... -
106 votesanswersviews
使用多重继承调用父类__init__,这是正确的方法吗?
假设我有一个多继承场景: class A(object): # code for A here class B(object): # code for B here class C(A, B): def __init__(self): # What's the right code to write here to ensure # A... -
0 votesanswersviews
什么's wrong with Guido'在Python中实现Super?
Cooperative methods and super This is an example pure python implementation of built in super by Guido for illustration purposes. I need some clarification on implementation of class Super below 在下面的代... -
5 votesanswersviews
Java泛型类型中的“super”关键字有什么问题
我在项目中遇到了一个奇怪的问题 . 现在我简化了问题并在这里写了一个小例子来说明我的困惑: public class Question { class Q1 {} class Q2 extends Q1 {} interface In<T> { void f(T t); } List<Q2> list; ... -
324 votesanswersviews
对于新式类,super()引发“TypeError:必须是type,而不是classobj”
以下使用 super() 会引发TypeError:为什么? >>> from HTMLParser import HTMLParser >>> class TextParser(HTMLParser): ... def __init__(self): ... super(TextParser, self).__init__() ...... -
49 votesanswersviews
Python的“超级”如何做正确的事情?
我熟悉Python的MRO; 's not my question. I'好奇如何从super返回的对象实际上设法与父类中的super调用正确的顺序进行通信 . 考虑这个示例代码: #!/usr/bin/python class A(object): def __init__(self): print "A init" class B(A): def __i... -
8 votesanswersviews
超级混乱的python多重继承super()
我正在玩python中的多重继承,我遇到了一个我无法理解它是如何发生的情况 . 这是继承布局: A F / \ | B C | \ | / \ | / D 每个人都熟悉的ABCD钻石 . 加上额外的“F”级别,我把它扔进去玩 . 这是代码: class A(object): def foo(s... -
24 votesanswersviews
多继承如何与super()和不同的__init __()参数一起使用?
我只是潜入一些更高级的python主题(好吧,至少先进了我) . 我现在正在阅读有关多继承以及如何使用super()的内容 . 我或多或少了解超级函数的使用方式,但 (1) What's wrong with just doing it like this ?: class First(object): def __init__(self): print "fir... -
2079 votesanswersviews
用__init __()方法理解Python super()[重复]
这个问题在这里已有答案: What does 'super' do in Python? 6个答案 我正在尝试理解 super() 的使用 . 从它的外观来看,可以创建两个子类,就好了 . 我很想知道以下两个子课程之间的实际差异 . class Base(object): def __init__(self): print "Base created"... -
587 votesanswersviews
什么是PECS(制作人扩展消费者超级)?
我在阅读泛型时遇到了PECS(制片人 extends 和消费者 super 的简称) . 有人可以向我解释如何使用PECS来解决 extends 和 super 之间的混淆吗?