Solucionado (ver solução)
Solucionado
(ver solução)
3
respostas

Confusão na diferenciação final de [:] invés de copy

Qual seria a explicação que diferencia essas 2 proposições distintas:

A: lista_2 = lista_1[:]

B: lista_2 = lista_1

Entendi que o exemplo A funciona igual a opção copy (o que for editado dentro dessa nova lista não irá influenciar dentro da original).

Agora não entendi por que o exemplo B se diferencia do exemplo A. Ambos não significam (eu pensei que sim, mas na verdade são distintos) a mesma informação?

A usa a variável completa, com posição vazia. B usa a variável completa, não? Eu realmente estou bem confusa em relação a essa diferenciação.

3 respostas
solução!

No caso de A, você está criando uma lista nova, copiando todos os valores da lista_1, como faria o copy(), ou seja, você tem um endereço de memória exclusivo para ele. Logo, é uma lista independente.

No caso de B, você está dizendo que a lista_2 aponta para o mesmo endereço que a lista_1. Então qualquer modificação na lista_2 também afetará a lista_1.

Nossa, agora a resposta para a dúvida parecia tão lógica hahaha

Obrigada pelo esclarecimento, Thiago! :)

Que bom que te ajudei =)

Por nada, Clara.