Entiendo lo que __new__
hace (y cómo es diferente de __init__
) por lo que no estoy interesado en las definiciones, me interesa saber cuándo y cómo usar __new__
.¿Cuáles son los casos de uso para __new__ de Python?
La documentación dice:
En general, no debería ser necesario para anular
__new__
a menos que estés subclasificación de un tipo inmutable comostr
,int
,unicode
otuple
Pero lo que pueda No piense en otros casos para usar __new__
o cómo usarlo correctamente (por ejemplo cuando se subclasifica un tipo inmutable o por qué es necesario en este caso).
Entonces, cuándo, por qué y cómo necesita usar __new__
?
Me interesan los casos de uso, no lo que hace (sé lo que hace).
@McFarlane: Sé que me interesan las situaciones en las que necesitas usar __new__ (más que la frase de "crear subclase de un tipo inmutable". ** Esto no es un duplicado. ** – JohnDoDo
@close votantes Esto no es un duplicado. La pregunta a la que se hace referencia pregunta * por qué '__init__' siempre se invoca después de' __new__' * (no lo es). Esta pregunta requiere casos prácticos para '__new__'. Una respuesta para esta pregunta no es una respuesta para esa pregunta. –
@lazyr: espero que no te importe, incorporé tu comentario a la pregunta. ¡Gracias! – JohnDoDo