Python append () vs. + operador en las listas, ¿por qué dan resultados diferentes?

¿Por qué estas dos operaciones (append() resp.+) dan resultados diferentes?

>>> c = [1, 2, 3]
>>> c
[1, 2, 3]
>>> c += c
>>> c
[1, 2, 3, 1, 2, 3]
>>> c = [1, 2, 3]
>>> c.append(c)
>>> c
[1, 2, 3, [...]]
>>> 

En el último caso hay en realidad una recursión infinita.c[-1] yc son lo mismo. ¿Por qué es diferente con el+ ¿operación?

Respuestas a la pregunta(7)

Su respuesta a la pregunta