Почему __new__ в классах нового стиля Python не является методом класса?

Список изменений для Python 2.2 (где были представлены классы нового стиля) говорит следующее о__new__ функция:

__new__ это статический метод, а не метод класса. Сначала я думал, что это должен быть метод класса, и поэтому я добавилclassmethod примитивный. К сожалению, с методами класса upcalls не работают правильно в этом случае, поэтому мне пришлось сделать его статическим методом с явным классом в качестве первого аргумента.

Однако я не могу думать о том, почему методы класса не будут работать для этой цели, и это будет выглядеть лучше. Почему не__new__ в конце концов, как метод класса в конце? На что ссылается Гвидо, когда говорит, что «в этом случае upcalls не работают правильно»?

Ответы на вопрос(1)

Ваш ответ на вопрос