Python doc diz que fatiar uma lista retorna uma nova lista.
Agora, se uma "nova" lista está sendo retornada, eu tenho as seguintes perguntas relacionadas a "Atribuição de fatias"
a = [1, 2, 3]
a[0:2] = [4, 5]
print a
Agora a saída seria:
[4, 5, 3]
- Como algo que está retornando algo pode aparecer no lado esquerdo da expressão?
- Sim, li a documentação e diz que é possível, agora, uma vez que o fatiamento de uma lista retorna uma "nova" lista, por que a lista original está sendo modificada? Não consigo entender a mecânica por trás disso.
a[0] = 4
que faria?
=
, então, em vez de descartar isso como sintaxe inválida, o python o transforma em algo mais parecido com o que você espera. Como o python não tem referências, não funcionaria se o resultado de uma fatia alterasse a lista original. Você consegue uma cópia. Se você forneceu mais informações sobre seu aplicativo, podemos ajudá-lo melhor a fazer as coisas da maneira 'pítônica'. :)