Кажется, что это должно быть просто:
Я хочу list
как и любой другой list
, за исключением того, что он имеет другой метод .__str__
.
- Попытка установить
object.__str__ = foo
приводит к ошибке только для чтения - Попытка подкласса
list
означает, что вам нужно каким-то образом преобразовать существующийlist
в экземпляр подкласса. Для этого требуется либо копирование всех атрибутов вручную (огромная боль), либо их копирование автоматически, что я не знаю, как это сделать. - Попытка написать обертку вокруг объекта
list
означает, что мне нужно выяснить способ отправки всех сообщений в обернутый объект, кроме.__str__
, который я обрабатываю с помощью собственного метода. Не знаю, как это сделать.
Любые альтернативы, или решения № 2 или № 3, получили высокую оценку. Спасибо!