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