Por que listar (minha_lista) modifica o objeto?
Eu aconteceu sobre esse comportamento peculiar acidentalmente:
>>> a = []
>>> a[:] = ['potato', a]
>>> print a
['potato', [...]]
>>> print list(a)
['potato', ['potato', [...]]]
Por qual mecanismo chamarlist(a)
desenrola um nível de recursão na representação de string de si mesmo?