У меня есть класс Python 2.7 (назовите его Child), который является потомком другого класса (Parent), который сам является подклассом dict.
Я пытаюсь определить __iter__
в Childв надежде, что когда кто-то сделает dict(child_object)
, я смогу контролировать, как он превращается в диктовку.Я, должно быть, что-то неправильно понимаю, потому что кажется, что вызов dict () полностью игнорирует вызов __iter__
и вместо этого идет к основному dict.
Я провел некоторое исследование и из документации по методу dict () Iобратите внимание, что он может сначала видеть объект как отображение и, следовательно, использовать его вместо итератора __iter__
.Так ли это, и если да, то есть ли способ, которым я могу перезаписать какой-то метод, который вызывается в отображении?