< Return to Video

CTA CAP03 2025 VA05 PYTHON SETS

  • 0:08 - 0:10
    Chegou a hora de a gente
    dar um olhada no "set",
  • 0:10 - 0:13
    mais uma estrutura de dados
    que representa um conjunto de itens.
  • 0:13 - 0:17
    É claro que a gente vai comparar
    o set com as outras estruturas.
  • 0:17 - 0:20
    E, quando a gente fala dessa aqui,
    a gente está falando também
  • 0:20 - 0:22
    de uma espécie de lista,
    ou um conjunto de itens,
  • 0:22 - 0:26
    mas o seu ponto forte é
    que ela não é ordenável,
  • 0:26 - 0:29
    ou seja, a gente não tem
    o conceito de indexação
  • 0:29 - 0:31
    dentro dos itens de um set.
  • 0:31 - 0:34
    A gente consegue adicionar
    e consegue remover itens,
  • 0:34 - 0:39
    consegue iterar, mas não consegue
    acessar os itens individualmente
  • 0:39 - 0:40
    usando os seus índices.
  • 0:40 - 0:44
    Vamos lá para o VS Code criar
    um set e ver como isso funciona.
  • 0:44 - 0:48
    Eu já tenho o arquivo main.py
    criado aqui dentro do VS Code,
  • 0:48 - 0:52
    então vamos começar criando
    uma variável chamada "numeros"
  • 0:52 - 0:57
    e o set varia um pouco das outras
    estruturas, porque a sua declaração
  • 0:57 - 1:00
    não vai usar colchetes, parênteses
    ou alguma coisa do tipo,
  • 1:01 - 1:04
    mas sim um construtor específico
    do tipo set,
  • 1:04 - 1:08
    ou seja, a gente vai precisar escrever set
    e executar isso aqui.
  • 1:08 - 1:12
    Pronto, a partir desse momento
    eu já tenho o meu set construído
  • 1:12 - 1:15
    e eu vou escrever o código aqui
    para exibir os itens dele lá no terminal.
  • 1:16 - 1:19
    Então vou colocar aqui print números
  • 1:19 - 1:22
    e vou executar aqui o Python
    um ponto x zero ponto barra
  • 1:22 - 1:24
    nem o ponto pai.
  • 1:24 - 1:28
    Legal, eu tenho aqui basicamente
    a execução do meu set sem nenhum
  • 1:28 - 1:29
    item dentro.
  • 1:29 - 1:32
    Diferentemente das outras estruturas,
    o set não permite que a gente
  • 1:32 - 1:35
    coloque valores iniciais
    durante a inicialização do tipo.
  • 1:35 - 1:39
    Então a gente vai basicamente
    vim aqui embaixo e colocar números ponto
  • 1:39 - 1:43
    ED, que é o método que permite que a gente
    coloque novos valores naquele conjunto.
  • 1:44 - 1:46
    Então eu vou começar colocando aqui o i,
  • 1:46 - 1:49
    depois eu vou colocar o valor dois
    e por último o valor três.
  • 1:50 - 1:52
    Se a gente executar
    o nosso código novamente,
  • 1:52 - 1:55
    a gente já consegue ver aqui no terminal
    entre chaves,
  • 1:55 - 1:57
    os itens daquele nosso conjunto.
  • 1:57 - 2:00
    E agora a gente vai colocar à prova
    aquilo que a gente comentou, porque,
  • 2:00 - 2:05
    como eu disse, o set,
    ele é um conjunto não ordenado, ou seja,
  • 2:05 - 2:09
    os itens eles, embora estejam aparecendo
    aqui na ordem um, dois, três
  • 2:09 - 2:13
    e muito provavelmente vão respeitar
    essa ordem conforme a gente for executando
  • 2:14 - 2:17
    em tempo de execução,
    não necessariamente estão nessa ordem.
  • 2:18 - 2:20
    E se o nosso set for muito grande,
  • 2:20 - 2:25
    a gente pode até mesmo presenciar
    casos em que, ao exibir o item uma vez,
  • 2:25 - 2:27
    um item está numa posição tal
    e da outra vez
  • 2:27 - 2:30
    ele vai estar em uma posição
    completamente diferente.
  • 2:30 - 2:34
    E por esse motivo,
    se a gente insistir e tentar acessar
  • 2:34 - 2:36
    usando os colchetes
    alguma posição específica,
  • 2:36 - 2:39
    como por exemplo
    a terceira posição no índice dois,
  • 2:40 - 2:44
    o Python retornará um erro para a gente
    falando que o set não é subscrito.
  • 2:44 - 2:45
    Tá bom.
  • 2:45 - 2:48
    Ou seja, que a gente não consegue acessar
    uma indexação específica
  • 2:48 - 2:51
    Se a característica de acessar os itens
    através de índice
  • 2:51 - 2:53
    for realmente necessária,
  • 2:53 - 2:57
    O set não é a melhor estrutura,
    porque você tentando fazer o set brilha
  • 2:57 - 3:01
    mesmo na sua característica
    de não permitir itens duplicados.
  • 3:01 - 3:03
    Ou seja, enquanto na lista
  • 3:03 - 3:06
    e na tupla a gente consegue colocar
    itens repetidos lá dentro.
  • 3:07 - 3:09
    No caso do set é um pouco diferente.
  • 3:09 - 3:11
    Ele simplesmente
    não aceita esse tipo de operação,
  • 3:11 - 3:13
    mas ele também não dá um erro.
  • 3:13 - 3:16
    Ele só não a faz
    se a gente tentar executar o método ED,
  • 3:16 - 3:20
    passando um valor, por exemplo dois,
    e logo em seguida fazer a mesma operação.
  • 3:21 - 3:23
    Ele vai adicionar no primeiro momento,
  • 3:23 - 3:25
    mas a segunda operação
    vai ser completamente ignorada,
  • 3:25 - 3:28
    fazendo assim
    com que a gente não tenha itens repetidos.
  • 3:28 - 3:32
    Olha só, aqui no nosso código
    a gente já colocou 1O2 e o três.
  • 3:32 - 3:35
    Olha o que acontece
    se eu repetir um mais algumas vezes?
  • 3:35 - 3:39
    Eu vou tirar aqui esse acesso de índice,
    porque ele é uma sintaxe inválida
  • 3:39 - 3:42
    e eu vou limpar o terminal
    para poder executar de novo.
  • 3:42 - 3:46
    Repara que a gente manteve os nossos
    mesmos três itens,
  • 3:46 - 3:49
    porque na linha três
    eu consegui adicionar o valor um,
  • 3:49 - 3:53
    mas nas linhas seguintes
    o Python ignorou completamente
  • 3:53 - 3:56
    a ação de adicionar
    porque a estrutura do set
  • 3:56 - 3:59
    não permite esse tipo de cenário
    e é uma característica dele.
  • 4:00 - 4:02
    A gente também consegue remover itens.
  • 4:02 - 4:04
    Isso é bem parecido com as outras
    estruturas,
  • 4:04 - 4:07
    basta que a gente passe para ele
    o valor que a gente quer remover.
  • 4:08 - 4:11
    E como nesse caso, não tem repetição,
    a gente não precisa nem se preocupar
  • 4:11 - 4:13
    com múltiplas ocorrências.
  • 4:13 - 4:14
    Dá uma olhada aqui.
  • 4:14 - 4:18
    No final eu vou vim
    e vou executar o número ponto do Remove
  • 4:19 - 4:22
    e para ele
    eu vou passar, por exemplo, o número dois,
  • 4:22 - 4:25
    que é aquele valor que a gente
    adicionou aqui logo depois do um.
  • 4:26 - 4:29
    Executando esse código,
    a gente consegue ver que o um está lá
  • 4:29 - 4:30
    sem nenhuma repetição,
  • 4:30 - 4:34
    que o três também, mas que o dois
    não faz mais parte desse conjunto.
  • 4:34 - 4:36
    A gente está começando a perceber aqui
  • 4:36 - 4:38
    que cada estrutura
    tem suas próprias características.
  • 4:38 - 4:40
    Isso é muito importante.
  • 4:40 - 4:43
    Existem cenários em que a gente vai
    conseguir, por exemplo,
  • 4:43 - 4:46
    usar uma lista
    e usar o set ao mesmo tempo.
  • 4:46 - 4:47
    Mas dependendo
  • 4:47 - 4:51
    do que a gente precisar fazer,
    uma vai atender melhor do que a outra.
  • 4:51 - 4:55
    Se a gente precisasse, por exemplo,
    receber dez números de um usuário
  • 4:55 - 4:57
    de forma
    que esses números não fossem repetidos
  • 4:57 - 5:01
    usando uma lista, a gente teria
    que, a cada iteração de um loop,
  • 5:01 - 5:05
    verificar se o que o usuário digitou
    já está dentro daquela lista e se tiver,
  • 5:06 - 5:09
    a gente ignora essa operação
    e pede o número novamente.
  • 5:09 - 5:10
    Trabalhar com o set
  • 5:10 - 5:12
    vai permitir que a gente chegue
    no mesmo resultado,
  • 5:12 - 5:16
    mas de uma forma bem mais simples,
    porque esse comportamento
  • 5:16 - 5:18
    que a gente teria que adicionar
    através de uma condição
  • 5:18 - 5:22
    é algo nativo daquele tipo, e a gente
    não vai ter que se preocupar com isso.
Title:
CTA CAP03 2025 VA05 PYTHON SETS
Video Language:
Portuguese, Brazilian
Duration:
05:25

Portuguese, Brazilian subtitles

Incomplete

Revisions Compare revisions