問題タブ [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 - CPython で `mro_internal()` を呼び出すのは何ですか?
Python でオブジェクトがどのようになるかを調べているのは何よりも好奇心のためであり、メソッド解決の順序にたどり着きました。
Python では、Cl
ベースwhen を持つクラスは、 を含むBa
属性 を持ちます。メタクラスは を定義できます。これにより、定義時に含まれる子クラスのカスタム タプルが提供されます。__mro__
(<class 'Cl'>, <class 'Ba'>, <class 'object'>)
mro()
__mro__
Cでは、私が理解できることから、この割り当てはによって処理されmro_internal
ますが、それがどこから呼び出されたのかわかりません。検索しても、テストでそれへの参照が見つかるだけです。
これをより実行可能な質問として表現するには; 「実行時にインスタンスの MRO を再定義するにはどうすればよいですか?」
python - ここで .__mro__ 属性にアクセスできないのはなぜですか?
私はこのコードを理解しています。私が理解していないのは、このコードを実行するとこのエラーが発生する理由です: