问题标签 [method-resolution-order]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
python - Python超级绕过MRO
我有一个继承的类并覆盖了一个也继承自基类的方法。但问题是中间方法创建了一个异常,我想通过调用第一个声明的方法来绕过它。有没有办法指定忽略第二次呼叫的mro ?
一个例子可能是:
非常感谢
PD:类似 BaseB(Base, BaseA) 类的东西可以工作吗?
python - 如何连接存储在 Python 中的继承链中的对象?
我正在实现一个用户界面。许多对象向用户界面公开各种属性。它们每个都有一个对象“ExposedProperties”,其中包含一个公开属性列表(及其类型、应如何显示、应如何验证输入等)。该 ExposedProperties 对象为每个类计算一次。
我想得到一个对象的所有公开属性的串联。一种方法是让每个对象将其“ExposedProperties”向上传递到继承链中,__init__
并让每个超类将其与自己的 ExposedProperties 连接起来。基类将在对象上设置串联的 ExposedProperties 。
另一种方法是等到从对象请求所有公开的属性。然后,扫描for属性中的每个类的基类方法在那时将它们连接起来。mro
exposed_properties
在 Python 中连接存储在继承链中的这些对象的最 Pythonic 方式是什么?
python - 在多重继承的情况下,超级方法在python中如何工作?
超级方法如何在 python 中实际工作?
在给定的代码中:
当test
在 D 上调用时,它输出B->C
而不是B->A
(我期望的)。
B 内部的 super 如何引用 C 的实例?
python - 如何在 Python 中检查派生哪些类方法?
我有两节课:
如何检查 Python 中派生的类方法?
例如:
python - 有没有办法改变 Python 类中的 __mro__ ?
有什么方法可以替换__mro__
Python 为类创建的默认属性?我想要一个由我制作的不同的解决方案。现在,当我尝试分配某些东西时,__mro__
我得到一个“只读属性”异常。
python - 如何按继承深度对 Python 类列表进行排序?
如何在 Python 中对类列表进行排序,确保任何子类在列表中的任何父类之前?
我问是因为我想从类型列表中查看一个对象属于什么类型,但如果它属于多个,则找到最具体的类型。
python - 没有超类属性的类属性
我有一个继承层次结构,其中一些类有一个名为“pickled”的类属性。我想知道A.pickled
它是否存在,或者如果不存在则 None ——即使 A 派生自许多类,包括例如 B 并且B.pickled
存在(或不存在)。
现在我的解决方案抓取A
的__mro__
. 如果可能的话,我想要一个更清洁的解决方案。
python - type.__getattribute__ 和 object.__getattribute__ 有什么区别?
鉴于:
好的,那要么调用 super 要么爬取 mro?
这是意料之中的。
什么是 getattribute 不做 getattr 做的?
什么?! type.__getattribute__
调用 super 但object
's 版本没有?
python - 理解python中方法解析排序的概念
当我调用 x=D() 为什么不调用 C 的init () 只有 B 的init () 被调用然后立即调用 D 的构造函数.. 不应该顺序是 B,A,C,D 其次,xf()显示错误参数传递的错误..
我究竟做错了什么??
python - 等效于 functools.singledispatch 的 super()
functools.singledispatch
有助于定义单调度泛型方法。同时,还有super()
调用方法或访问超类的属性。
有没有类似的东西super()
可以用singledispatch
?我尝试了以下方法,但结果super(Derived, value)
只是不是实例Base
,所以它没有按我预期的那样工作: