Linguagem Python - Alguém pode me ajudar a entender um código simples?
Queria saber por que o output da lista3 não é
['carro', 'metrô', 'carro', 'metrô', 'carro', 'metrô']
mas sim
['carro', 'barco', 'carro', 'barco', 'carro', 'barco'],
não consigo entender o porque...
Segue o código:
----------------------------------------------------------------------
lista1 = ["carro", "barco"]
lista2 = [lista1] * 3
lista3 = lista1 * 3
lista1[1] = "metrô"
-----------------------------------------------------------------------
Segue o output dado pelo IDLE:
>>>lista1
['carro', 'metrô']
>>> lista2
[['carro', 'metrô'], ['carro', 'metrô'], ['carro', 'metrô']]
>>> lista3
['carro', 'barco', 'carro', 'barco', 'carro', 'barco']
-----------------------------------------------------------------------
Soluções para a tarefa
Respondido por
2
é pq vc mudou a lista1 depois de já ter definido a lista3, experimente assim:
lista1 = ["carro", "barco"]
lista2 = [lista1] * 3
lista1[1] = "metrô"
lista3 = lista1 * 3
lista1 = ["carro", "barco"]
lista2 = [lista1] * 3
lista1[1] = "metrô"
lista3 = lista1 * 3
Perguntas interessantes