Repaso
English
PythonIntermedioPY-12

print([obj]) donde obj define tanto __str__ como __repr__. ¿Cuál se usa para obj?

Opciones

  1. __str__
  2. __repr__ (Opción correcta)
  3. __format__
  4. Ninguno: imprime la dirección de memoria

Respuesta

__repr__

Por qué

__str__ devuelve texto amigable para usuarios. __repr__ devuelve texto preciso para desarrolladores.

Cuando Python imprime una lista, muestra cada elemento con repr(), porque quiere una salida sin ambigüedades.

Así que print([obj]) usa __repr__, mientras que print(obj) usa __str__.

Recuerda

Los contenedores muestran sus elementos con repr().

Términos clave

Practica esta pregunta en Repaso