[ Foro de Python ]

funcionamiento inesperado de algoritmo simple

10-Apr-2021 03:23
Invitado (Marcela)
1 Respuestas

Hola! alguien podria decirme por que el siguiente codigo me imprime vacia la lista1, si yo nunca la borre ni vacié? Yo solo borro la lista2 y ANTES de borrar, asigne sus valores a lista1!
Gracias!!



lista1=[1,2,5,7,8]
lista2=[3,4,5]

lista1=lista2
print("lista y lista2: ", lista1,lista2)
lista2.clear()
print("lista y lista2: ", lista1,lista2)


10-Apr-2021 11:37
Nacho Cabanes (+76)

Porque "lista1=lista2" no copia una lista en la otra, sino que hace que las dos pasen a ser el mismo objeto, ocupando la misma posición de memoria.






(No se puede continuar esta discusión porque tiene más de dos meses de antigüedad. Si tienes dudas parecidas, abre un nuevo hilo.)