Boas Maurício! Tudo bem? Espero que sim!
Em verdade, o que ocorre é que quando você escreve
frutas_2 = frutas
Você não criou uma cópia da lista, só criou um uma nova variável que se refere ao mesmo endereço de memória dessa lista.
Em outras palavras, quando você faz frutas_2 = frutas
, você só está criando dois jeitos de se referir à mesma coisa.
Portanto, quando você usa o frutas_2.pop()
você está retirando um elemento do endereço de memória de frutas_2
, que é o mesmo endereço de frutas
.
Se você quiser criar uma cópia da lista, a forma mais fácil é usando a função copy()
:
frutas = ['banana', 'laranja', 'abacaxi']
frutas_2 = frutas.copy()
Dessa forma, a variável frutas 2 possui uma lista semelhante, porem em um novo endereço de memória.
Agora podemos efetuar o teste que você fez:
frutas_2.pop()
frutas_2 == frutas
Que retorna false.
Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓.Bons Estudos!