e fala galera nessa aula eu quero matar uma dúvida difícil do pai tão Como que você faz para copiar uma lista em Python porque vocês ouvindo só Aguarda aí tá falando é muito simples mas eu tenho certeza que você faz isso errado e eu quero te ajudar a resolver isso de uma vez por todas e entender o porquê que isso acontece no pai então vamos lá que o conteúdo tá bem direto ao ponto e na sala Que bom E se a gente começar a dois pedidos o primeiro deles é o presente na verdade eu vou deixar aqui embaixo link da inscrição para você um minicurso gratuito de Python beleza para você que está aprendendo paz aprenda os listas dicionários o que for deixar um perigoso aqui para você postei um primeiro projeto em pai e o segundo é realmente o pedido aproveita que eu tô te dando um presente se escreve aqui no canal né mas ele troca se inscreve no canal estão presente e te dou mais conteúdo aqui no carro Beleza você inscreve aí no canal dá um like no vídeo e vamos lá para o tempo bom é o seguinte quando você copia uma lista em Python você na verdade não está copiando uma lista em e Como assim ir sim Acompanha comigo raciocínio pega o arquivo em Python e seu computador e faz exercício comigo eu vou chegar aqui e bloquear a por exemplo uma lista a e essa lista vai ser uma lista com vários nomes Lira alum Me acompanhe acompanhe Júlia eu ir Beleza tem que quatro nomes na minha lista E aí se eu virar para você falar olha só faz uma cópia dessa lista para mim por favor uma outra variável uma lista B como você faria para a gente saber ser igual a listar uma cópia dela bom você chegar em farei provavelmente isso daqui mas se você fizer isso no pai Então você não está criando uma cópia deve estar você na verdade está só dando um segundo nome para mesma lista ó sim olha só eu criei aqui olha ela está e eu disse que a minha vista aberta era tá igual a minha está isso eu chegar agora fizer assim uma lista b. Aprende Vamos colocar um outro nome aqui dentro não colocar o nome feijão Oi e aí eu te pergunto o que que vai acontecer se eu perguntar Aqui está a ele está bem inicialmente né o mais intuitivo você parar nem pensaria que hora vai aparecer alistar a vai ser vira a lonjura e Jéssica e ele saber irão Júlio Jéssica e feijão Porque eu aprendi adiciona o item o final da lista só que como você deve imaginar pela entonação que eu tô falando isso não vai acontecer e olha o que acontece a lista a também tem o valor do feijão e a lista B também tem o valor do feijão O que é isso repare só com 10 para as listas isso não acontece para texto para número olha só se eu chegasse aqui fizer assim ó texto a lira o texto B vai ser igual a textual tá vendo e aí eu faço acima texto b. Texto Bené igual ao texto B o ponto replace you com a letra B por exemplo a letra L pela letra B vai virar de Lira vai virar pira e eu printo os dois casos agora esse aqui você não tô fazendo o seu não só comprei comigo lógica e eu printo os dois agora o que vai acontecer né que que eu fiz eu criei ali o texto diz que o texto é igual textual igual a gente fez aqui na lista modifiquei o texto B tá vendo eu modifiquei o texto Bic e agora vou pintar os dois se você que tá isso daqui olha lá com o texto o texto ae o texto B são coisas diferentes como a lista eles não são coisas diferentes e eu vou agora desenhar e isso para você para você conseguir visualizar melhor Acompanha comigo bom é o seguinte quando você cria uma lista em Python então quando eu vim aqui e crie uma variável lista a desculpa minha letra Mas acho que vai dar para você entender o que que na verdade o pai então tá fazendo porque na verdade está criando imagina que isso aqui é a memória do seu computador e o que que o pai tanto faz com essa memória do seu computador ele pega essa de estar e ele disse que essa listar é esse espaço aqui isso daqui é a sua lista a beleza E aí isso daqui é a sua ele está O Show Beleza e aí como você cria uma lista B criei aqui agora uma lista B Olha eu crio a sério sabe o que que acontece na verdade né Eu falo assim lista B é igual a minha lista a isso só acontece com listras porque lista no Python é um local na memória do seu computador o que quer dizer o local na memória do seu computador é com se dentro desse tracinho que eu fiz aqui ó esses tracinhos agora em vermelho ali dentro estão armazenados os valores que estão dentro daquela lista e a lista é essa caixinha que tá em volta tá vendo essa caixinha que tá em volta é a sua lista e ali dentro então os valores estão armazenados dentro dela quando você faz lista B = de estar o que acontece na prática no pai então é o seguinte a sua lista b a ponta por mesmo lugar onde está a listar bom então quando você o sinal de igual esse recebe né do pai de qualquer linguagem de programação mas que no Python pega uma lista recebe a formação da outra na verdade ele não recebe os elementos da outra ele recebe um local onde está armazenada outra então na prática na prática mesmo ele está ele está bem continuo sendo a mesma coisa O que significa que se eu chegar agora e fizer qualquer modificação na lista B ele também vai impactar minha lista a beleza por quê Porque a lista nada mais é do que essa caixinha aqui na memória eu estou guardando as informações dentro dela então assim olha faço eles também pode estar a lista e recebe todas as informações deve está só que ela não recebe suas informações ela recebe um local onde ela tá então elas apontam para o mesmo lugar que eu sei onde tá uma eu vejo é outra beleza lutando para cá tenham entendido isso como que a gente faz para então o respectivamente copiar uma lista com a outra e tem duas formas você resolver isso e suas formas que eu vou escrever aqui duas formas a primeira forma de você resolver isso é você falar aí está B recebe os elementos da lista é para diferente eu não tô falando que a lista B recebe a minha lista a eu tô falando que a minha lista B recebe os elementos da minha lista ao que que é isso daqui quando você passa dentro do consciente zero é o elemento de índice zero nessa ficou tipo um elemento de ensino dentro do Koch dois é o elemento de índice dois e quando eu faço dois pontos da falando todos os elementos Ou seja a minha lista B ela vai receber os elementos da lista que repara seguinte como os elementos da licitação números letras texto aí sim a minha lista é uma coisa ele está é uma coisa completamente diferente Beleza essa é a primeira forma de você fazer isso é só para mostrar aqui eu vou falar a minha lista seita vou e você agora vamos fazer a mensagem ele está aí eu vou chegar agora aqui ó na minha lista c e vou adicionar um outro caramba adicionar o arroz deve ter arroz feijão e aí eu vou printar agora a minha lista a né de novo e vou pintar a minha lista se tá vendo que aí vamos rodar agora para você visualizar e olha lá a minha lista a agora é essa aqui é a minha lista Cê tem arroz tá vendo agora elas são coisas diferentes a primeira forma é você fazer assim ela recebe todos elementos como então ela recebe um ponto copo a minha lista ser uma cópia da minha lista que é isso aí ele vai pegar só estar vai criar uma cópia e vai atribuir essa cópia para lista cedo então agora eles são coisas diferentes eu tenho está ai eu tenho a cópia da listar que o senhor das código aqui O resultado vai ser o mesmo tá vendo aqui ó resultado é o mesmo tranquilo então essas duas formas a questão resolvida ou ponto cop ou entre colchetes os dois pontos para pegar todos os elementos só que eu quero mostrar ainda uma exceção à regra a qual é a exceção da regra responda a regra o seguinte tem algumas vezes no pai que você tem listas de listas Então vou botar que hora e para listas de listas temos que pensar diferente porque senão que eu tenho uma lista de produtos e essa minha lista de produtos ela tem basicamente várias listas em que cada uma dessas listas individuais é o nome do produto e o preço dele então por exemplo eu tenho que o iPad que é vendido por exemplo assim como rádio colocar aqui valor eu tenho aqui o iPhone que é vendido por exemplo a 4500x beleza e essa que minha lista de produtos e aí Digamos que queira criar uma cópia dela que vai usar produtos 21 trabalhe produtos dois vai ser os produtos a todos os elementos tá vendo estou a dizer é nesta minha lista de produtos e aí eu quero editar na minha lista de produtos dois o preço do iPad na minha lista de produtos dois eu vou aumentar o preço do iPad para 6 mil Então vou fazer assim ó produtos dos índice certa ver nessa primeira lista do produto dois é o produto de dois em 60 Então quem é a produtos de 20 essa lista aqui com ele é Bento eu quero dessa lista esse cara que é o cara de ensino tá vendo é o cara de ensino um Então dentro do tanque nesse cara eu quero cara de ensino mesmo se você não tiver confortável com essa linha de código aqui é porque você ainda não trabalha não usa tanto assim as listas no Python porque isso daqui ó produtos de índice zero é o primeiro elemento da lista de produtos que as primeiro elemento aqui que é uma lista em si e aí eu tô desse primeiro elemento qual elemento dentro dele eu quero eu quero primeiro que a mente zero o segundo que eu me disse um segundo que eu ensino e eu vou modificar esse cara para 6.
000 Galera tô ruim e pede para 6. 000 feito isso eu vou pintar os valores dos produtos que eu vou perguntar aqui produtos e vou printar produtos dois tá vendo na hora que acontece se eu fizer isso aqui rodei olha lá o que acontece as duas listas estão com preço do iPad 6. 000 não é linda você não falou que isso daqui resolvi ia sim isso serve tanto para ponto.
Para cop sim ele funciona mas ele funciona porque eu tenho uma lista só normal no Python Só se você tem uma lista de listas aí tá vendo é uma referência da referência seja tipo isso E aí buga muito a cabeça que ele tem uma solução simples para isso para você tem que ficar pensando não mas então eu vou fazer ele igual a cópia de não sei quem e o elemento é igual a próxima tem que mudar a cabeça você copia de uma outra forma se for lista de lista você copia de outra forma e qual é a forma que você copia você importa um módulo ou seja um pacote de código que alguém construiu uma lista que é um nódulo top esse módulo o método chamado de hip hop ou seja cópia profunda que basicamente ele evita esses problemas e ele copia bem que de forma forçada para você seria a essa lógica dele beleza e aí como que você faz para construir isso né então a solução que pode colocar que horas a nossa solução é um Vip cop o ipcop é isso é uma cópia que vai ignorar essa referência nessa esquema de ar Ao invés dele copiar os valores ele já fazendo referência ao mesmo local não sei o que ele vai ignorar isso e ele vai direto copiar os valores criando uma uma outra cópia coisa diferente mesmo então vou querer aquilo produtos três quem vai ser meu produtos três meu produtos três vai ser justamente um Coop o ponto de cop dos meus produtos então o que que ele tá fazendo ele tá fazendo Olha só copia tudo que tem dentro ali dos produtos e cria uma cópia produtos três mas uma cópia que Garanta que produz três é diferente de produtos é isso que o ipcop tá fazendo E aí se eu chegar agora e por exemplo ele está no produtos três o mesmo cara o cara de índice zero e o cara disse um E aí colocar aqui o preço do iPad agora vai ser mil reais e a gente pintar eles Olha que vai acontecer print produtos e print produtos três E aí se eu rodar isso aqui agora sim agora você pode olhar aí ó o produtos três o preço do iPad tamil e o produto surpreso preço do iPad está 6.