Cómo concatenar Object
con una cadena (primitiva) sin sobrecargar y tipo explícito de conversión (str()
)?Cómo concatenar `Objeto` con una cadena?
class Foo:
def __init__(self, text):
self.text = text
def __str__(self):
return self.text
_string = Foo('text') + 'string'
Salida:
Traceback (most recent call last):
File "test.py", line 10, in <module>
_string = Foo('text') + 'string'
TypeError: unsupported operand type(s) for +: 'type' and 'str'
operador +
debe sobrecargarse? ¿Hay otras formas (solo preguntarse)?
PS: Yo sé de la sobrecarga de los operadores y la conversión de tipos (como str(Foo('text'))
)
¿Cuál es su resultado esperado en _string? "textstring"? – Rod
Quiero devolver una cadena. ¡sólo me preguntaba! – tomas
¿Por qué no quieres usar 'str' para forzar el objeto en una cadena? – Marcin