‫Você acredita nisso?
‫Espero não ter feito você dormir, mas estamos quase lá.
‫Temos um último conjunto de tipo de dados principal e pronto.
‫Eu sei.
‫Eu sei que este não é o assunto mais emocionante.
‫Acredite em mim, essa é a parte mais difícil.
‫Quando você está começando e está aprendendo essas coisas sem entender, por que preciso disso?
‫Como vou construir o próximo jogo?
‫Como vou construir o próximo Netflix?
‫Como vou construir o próximo aplicativo mais legal da Apple?
‫Você está olhando para isso e pensando: acabei de aprender um monte de teoria.
‫Eu sinto que estou na aula de matemática de novo.
‫Eu sei.
‫Confie em mim.
‫Eu passei por isso.
‫Eu também era um programador autodidata.
‫Esses são os blocos de Lego que constroem nossa base.
‫Depois de aprendermos isso, podemos prosseguir para coisas novas.
‫E você verá que, ao escalar esta pequena montanha, as coisas se tornam muito mais fáceis e você perceberá
‫o poder.
‫Quando começamos a construir esses projetos no final da aula, onde você vai dizer, ah,
‫todos esses bloqueios que aprendemos, toda essa parte francamente entediante vai fazer sentido.
‫Então aguente firme.
‫Deve ser difícil.
‫Deve ser difícil, mas você verá muito em breve por que isso é tão poderoso e por que
‫o que acabamos de aprender nos permitirá construir coisas realmente incríveis e criar alguns programas realmente incríveis.
‫Então vamos terminar com o último, o último tipo de dados, a última estrutura de dados que veremos
‫em Python, pelo menos das principais.
‫E é chamado de conjunto e os conjuntos são simplesmente coleções não ordenadas de objetos únicos.
‫Hum.
‫Vamos dar uma olhada.
‫Vamos criar uma mentalidade e meu conjunto criaremos com chaves como um dicionário, mas em vez de um dicionário,
‫não temos pares de valores-chave.
‫Em vez disso, temos apenas valores como um, dois, três, quatro ou cinco.
‫É isso, é um conjunto que acabamos de criar, mas lembre-se, a definição que dei a você conjunto
‫é uma coleção não ordenada de objetos únicos.
‫O que isso significa?
‫Bem, se eu imprimir isso e disser meu conjunto e clicar em executar.
‫Recebo um conjunto, mas se tivesse, digamos, mais cinco aqui e clico em executar.
‫Ele retorna apenas os conjuntos exclusivos ou itens exclusivos que você vê em um conjunto, não há duplicatas.
‫Tudo tem que ser único.
‫Portanto, esse fogo nunca é adicionado a um conjunto, por exemplo, você pode adicionar coisas a um conjunto como o meu e, então,
‫posso dizer adicionar e atribuir a ele um valor de cem.
‫E então, digamos que eu faça meu anúncio de ponto definido e, em seguida, dê para, se eu clicar, executar aqui.
‫Vejo que fui capaz de somar cem, mas dois bem, dois não foram realmente adicionados porque
‫meu dito já continha esses dados.
‫Não está ordenado.
‫Quer dizer, nós criamos um, dois, três, quatro ou cinco aqui, mas não há uma ordem real para isso.
‫Não há estante de livros em nosso espaço de memória que seja uma ao lado da outra.
‫Eles estão espalhados por toda a memória.
‫Mas um conjunto é capaz de encontrá-los porque são todos únicos.
‫Então, eles estão todos em apenas um local na memória.
‫Então, deixe-me perguntar uma coisa, e este será um pequeno exercício divertido.
‫Se eu te der um array.
‫E digamos que esta matriz contenha, bem, isso bem aqui.
‫E eu quero que você retorne um array sem duplicatas, então eu quero tudo, digamos,
‫vamos chamá-lo de minha lista.
‫E um programador já criou isso.
‫OK, então sua tarefa é criar ou retornar uma lista ou coleção que tem apenas itens exclusivos.
‫Como você faria para converter isso em um conjunto?
‫Bem, já vimos isso antes.
‫Temos uma função de conjunto e simplesmente envolvemos minha lista nesse conjunto.
‫E isso está impresso.
‫Eu clico, corro.
‫Confira.
‫Formamos um novo conjunto de uma lista.
‫E eu removi todos os valores duplicados, quando isso seria útil?
‫Imagine se tivéssemos nomes de usuário corretos ou endereços de e-mail para coletar endereços de e-mail em
‫nossa página inicial, mas não queremos e-mails duplicados.
‫Podemos querer converter esta lista de e-mails em um conjunto e remover todas as duplicatas.
‫Portanto, não estamos enviando e-mails indefinidamente.
‫Então isso é muito legal.
‫E sobre isso, posso mudar isso para um conjunto, então vamos chamá-lo de meu conjunto.
‫Isso vai transformar isso em um conjunto.
‫Ai está.
‫E então, o que aconteceria se eu quisesse acessar meu conjunto com um índice de zero?
‫Hmm, definir objeto não suporta indexação.
‫Bem, novamente, você pode pensar nisso mais como um dicionário para acessar um conjunto, temos que pegar o
‫item que está dentro.
‫Essa é a chave para obter as informações da memória.
‫A maneira como verificaríamos se algo existe é simplesmente dizer, ei, é um no meu conjunto e o executamos.
‫E nós conseguimos.
‫Também podemos fazer a duração do meu set e conseguir cinco de novo, nada muito louco, mas um, dois, três, quatro,
‫cinco.
‫Lembre-se de que ele conta apenas as coisas únicas porque isso nunca será inserido.
‫É um conjunto.
‫E, alternativamente, também podemos converter isso em uma lista.
‫Se eu clicar em executar aqui, você verá que agora tenho meu conjunto como uma lista.
‫E então também podemos fazer, digamos, minha cópia do conjunto filha e realmente copiar meu conjunto em algo,
‫digamos novo.
‫Ou um novo conjunto, e então este será completamente diferente ou uma nova cópia, então esta original.
‫Então, vamos testar isso, esse novo conjunto.
‫Se eu usar um método que podemos ter visto antes, que é o meu set dot clear, que como você pode imaginar, limpa o
‫set e eu clico em executar.
‫Eu tenho aquele novo conjunto, mas quando tento imprimir está tudo pronto, que era o meu conjunto, vai ficar vazio,
‫um conjunto vazio, mas o verdadeiro poder dos conjuntos chega.
‫Os próximos métodos que vou mostrar a você e os conjuntos têm alguns métodos, mas não se preocupe, a
‫maioria deles são bastante semelhantes.
‫Então, vamos explorar isso no próximo vídeo.