Перегрузка угловых скобок в питоне

Довольно странный вопрос, но возможно ли перегрузить значение некоторых типов скобок, например <, >, [, ] and | в питоне. Например, если у меня есть несколько экземпляров объекта MyObj1 а также MyObj2 могу ли я придумать что-нибудь <MyObj1 | MyObj2 > был понят как вызов метода в MyObj1?

Я думаю, что это, вероятно, не может / не должно быть сделано, но я решил спросить!

1 ответ

Нет. Единственная перегрузка операторов, которая разрешена в Python, - это изменение семантики времени выполнения уже существующих операторов. Синтаксис <MyObj1 | MyObj2 > будет включать либо < а также > в унарные операторы (один префикс, один постфикс) или превращение их обоих в один оператор "обхода". Поскольку в настоящее время они являются двоичными инфиксными операторами, такое изменение не может быть сделано.

Другие вопросы по тегам