< Return to Video

DDD CAP03 2024 VA03 PYTHON ESTRUTURAS CONDICIONAIS

  • 0:00 - 0:04
    Agora que você já conhece
    as estruturas condicionais em Portugol,
  • 0:04 - 0:07
    vamos ver na prática
    como é feito no Python.
  • 0:15 - 0:18
    Para executar um código em Python,
    existem várias formas.
  • 0:18 - 0:19
    Você pode instalar
    na sua máquina
  • 0:19 - 0:22
    e executar com sua
    ferramenta predileta,
  • 0:22 - 0:25
    ou podemos usar alguma
    plataforma online.
  • 0:25 - 0:28
    Aqui estou no
    "online-python.com",
  • 0:28 - 0:31
    uma plataforma que você
    consegue executar códigos
  • 0:31 - 0:35
    rapidamente
    na linguagem Python.
  • 0:35 - 0:37
    Eu tenho um
    algoritmo implementado
  • 0:37 - 0:42
    onde nós vamos ver o uso do
    "if" e "else" da estrutura condicional.
  • 0:42 - 0:45
    Primeiramente,
    dentro dessa variável "idade",
  • 0:45 - 0:48
    nós estamos pedindo para
    o usuário digitar uma idade,
  • 0:48 - 0:52
    transformando o que ele digitou,
    quem vem em uma string,
  • 0:52 - 0:54
    em um número inteiro.
  • 0:54 - 0:58
    Depois, fazemos a validação
    através do "if".
  • 0:58 - 1:02
    Aqui, a condição que eu quero,
    "idade >= 18".
  • 1:02 - 1:05
    No final do "if",
    eu tenho que colocar os ":"
  • 1:05 - 1:09
    e essa identação
    é obrigatória
  • 1:09 - 1:12
    para entender
    o que está dentro do "if".
  • 1:12 - 1:17
    No caso, somente esse "print"
    com um texto para o usuário.
  • 1:17 - 1:20
    Então, eu tenho também
    o comando "else", com ":",
  • 1:20 - 1:24
    e também o recuo para dizer que
    o "print" está dentro do "else",
  • 1:24 - 1:28
    ou seja, se essa condição for
    verdadeira, ele vai imprimir.
  • 1:28 - 1:30
    "Você pode assistir os vídeos";
  • 1:30 - 1:33
    se condição
    "idade >= a 18" for falsa,
  • 1:33 - 1:36
    ele vai imprimir
    esse outro texto.
  • 1:36 - 1:40
    Clicando no "Run", eu vou
    conseguir executar esse código.
  • 1:40 - 1:43
    Então, eu vou digitar uma idade,
    uma idade de 20
  • 1:43 - 1:45
    e, no caso,
    o acesso foi concedido,
  • 1:45 - 1:48
    ou seja, ele imprimiu o que
    está dentro do "if".
  • 1:48 - 1:52
    Se eu colocar uma idade
    menor do que 18,
  • 1:52 - 1:56
    ele vai executar
    o que está no "else".
  • 1:56 - 2:00
    Aqui no Python, eu tenho
    os operadores relacionais também.
  • 2:00 - 2:02
    Então, eu tenho o "and".
  • 2:02 - 2:08
    Eu poderia colocar "idade <= 60",
    ou "idade < 60",
  • 2:08 - 2:15
    ou seja, eu tenho a condição
    idade >= 18 e idade < 60,
  • 2:15 - 2:18
    ele tem que atender
    a essas duas condições
  • 2:18 - 2:20
    para que este texto
    seja impresso.
  • 2:20 - 2:24
    Então, se eu executar aqui
    e colocar 70 anos, agora,
  • 2:24 - 2:25
    ele não vai ter
    a permissão,
  • 2:25 - 2:30
    porque essa condição aqui
    se tornou falsa.
  • 2:30 - 2:34
    Além do "and", eu tenho "or",
    que seria um ou outro,
  • 2:34 - 2:38
    então ou a idade é maior,
    igual ou idade menor,
  • 2:38 - 2:41
    e eu tenho a negação,
    também, seria o "not".
  • 2:41 - 2:46
    Então, no caso, ele está invertendo
    o resultado dessa condição.
  • 2:46 - 2:47
    Se isso aqui
    for verdadeiro,
  • 2:47 - 2:50
    o "not" vai transformar
    essa expressão no falso;
  • 2:50 - 2:54
    e se for falso,
    ele transforma em verdadeiro.
  • 2:54 - 2:58
    Esses são os nossos operadores
    relacionais dentro do Python.
  • 2:58 - 3:02
    É possível trabalhar, também,
    com "if" encadeado dentro do Python.
  • 3:02 - 3:06
    Porém, no Python existe
    uma estrutura chamada "elif",
  • 3:06 - 3:08
    que é a junção do
    "else" com o "if",
  • 3:08 - 3:09
    onde eu coloco já
    uma condição,
  • 3:09 - 3:11
    ficando um código
    muito mais simples.
  • 3:11 - 3:12
    Vamos ver na prática.
  • 3:12 - 3:16
    Aqui eu tenho um algoritmo
    onde nós estamos validando
  • 3:16 - 3:20
    a premiação dos clientes
    de acordo com o valor de compras
  • 3:20 - 3:23
    e também a frequência
    que ele está realizando as compras.
  • 3:23 - 3:25
    Então, primeiramente,
    nós estamos armazenando
  • 3:25 - 3:28
    nesta variável chamada
    "valor_compras"
  • 3:28 - 3:32
    o valor total das compras
    do nosso cliente;
  • 3:32 - 3:34
    e aqui na "frequencia"
    nós pedimos para ele colocar
  • 3:34 - 3:38
    quantas vezes ele realizou
    uma compra na nossa loja.
  • 3:38 - 3:43
    Essa aqui é do tipo float
    e a "frequencia" do tipo inteiro.
  • 3:43 - 3:45
    Então,
    começam as validações:
  • 3:45 - 3:51
    se "valor_compras >=2000.0"
    e a "frequencia >=10",
  • 3:51 - 3:54
    ele vai ter aqui
    a categoria VIP.
  • 3:54 - 3:59
    E então, o nosso "elif"
    ou seja, o "else" junto com "if"
  • 3:59 - 4:03
    e esse "if" já vem
    com a nova condição.
  • 4:03 - 4:05
    Então,
    se essa expressão for falsa,
  • 4:05 - 4:10
    ele vai vir para o "elif" e vai
    testar essa nova condição aqui.
  • 4:10 - 4:15
    Se essa aqui também for falsa,
    ele vai para o próximo e o "elif",
  • 4:15 - 4:17
    testando aqui se
    "valor_compras > 500"
  • 4:17 - 4:19
    ou "frequencia >5",
  • 4:19 - 4:23
    e se essa condição
    não for verdadeira,
  • 4:23 - 4:26
    as duas expressões aqui
    com "or' forem verdadeiras,
  • 4:26 - 4:29
    ele vai para o "else"
    para imprimir
  • 4:29 - 4:33
    essa última mensagem
    para o nosso usuário.
  • 4:33 - 4:35
    Vamos testar?
  • 4:35 - 4:42
    Então, no caso o "valor_compras",
    eu comprei 1000 reais
  • 4:42 - 4:45
    e eu realizei 6 compras
    no ano.
  • 4:45 - 4:48
    Aonde será que ele vai?
  • 4:48 - 4:51
    Qual "if" ou "elif"
    que ele vai executar?
  • 4:51 - 4:56
    Então, aqui deu que eu estou na
    categoria ouro e ganhei prêmios extras,
  • 4:56 - 5:01
    ou seja, se olhar aqui,
    "valor_compras" é maior do que 1000,
  • 5:01 - 5:04
    maior ou igual, senão não teria
    entrado aqui nessa condição.
  • 5:04 - 5:08
    Então ele validou a primeira,
    viu que não foi verdadeira,
  • 5:08 - 5:12
    já que eu só fiz
    1000 de valor e 6
  • 5:12 - 5:15
    e ele caiu aqui
    nesse próximo e "elif".
  • 5:15 - 5:19
    Outra estrutura condicional existente
    no Python, a partir do 3.10,
  • 5:19 - 5:23
    é o "match case", é o equivalente
    ao "switch case" em outras linguagens.
  • 5:23 - 5:27
    Eu quero saber qual é o valor
    que existe dentro da variável.
  • 5:27 - 5:29
    Se eu tenho um conjunto
    de valores possíveis
  • 5:29 - 5:32
    e, dependendo do valor,
    eu quero executar alguns comandos,
  • 5:32 - 5:35
    eu posso utilizar essa
    estrutura condicional.
  • 5:35 - 5:39
    Aqui eu tenho um algoritmo que está
    implementando uma calculadora,
  • 5:39 - 5:42
    onde o usuário tem 4 opções
  • 5:42 - 5:45
    e ele vai escolher a opção
    de acordo com um número.
  • 5:45 - 5:49
    Então, 1 é soma, 2 é subtração,
    3 é multiplicação e 4 é divisão
  • 5:49 - 5:51
    e, de acordo com esse menu
    que foi apresentado,
  • 5:51 - 5:53
    ele vai escolher
    uma das opções,
  • 5:53 - 5:58
    que será armazenadas
    nesta variável chamado "escolha".
  • 5:58 - 6:01
    Depois, nós vamos ler
    outros 2 números,
  • 6:01 - 6:04
    que serão realizados na
    operação aritmética que ele escolheu,
  • 6:04 - 6:09
    então, vão ser armazenado
    no "num1" e no "num2".
  • 6:09 - 6:11
    Então, nós vamos
    calcular o resultado.
  • 6:11 - 6:13
    Como que vamos
    calcular o resultado?
  • 6:13 - 6:16
    De acordo com o que ele
    escolheu aqui nessa opção.
  • 6:16 - 6:18
    Então,
    "match (escolha):",
  • 6:18 - 6:22
    o que tiver dentro dessa variável
    chamada "escolha",
  • 6:22 - 6:26
    Se for 1, ele vai executar
    esses comandos;
  • 6:26 - 6:33
    se for 2, esses outros;
    3 essa multiplicação;
  • 6:33 - 6:39
    e se for 4, primeiro ele valida
    se "num2" é diferente de 0,
  • 6:39 - 6:41
    já que eu não posso
    dividir por 0.
  • 6:41 - 6:45
    Se for diferente, ele vai realizar
    a divisão e mostrar o resultado;
  • 6:45 - 6:49
    se não for, ele vai falar que
    "Não é possível dividir por zero!".
  • 6:49 - 6:54
    Esse último case,
    quando colocamos esse "_",
  • 6:54 - 6:58
    quer dizer que nenhuma das opções
    foram atendidas, ou seja,
  • 6:58 - 7:03
    o "escolha" que o usuário digitou
    não é o número 1, 2, 3 ou 4,
  • 7:03 - 7:05
    ou seja, qualquer outro
    valor que ele digitou,
  • 7:05 - 7:08
    então, nós temos aqui um "case"
    que é uma ação padrão,
  • 7:08 - 7:10
    que vai realizar que é
    "Operação inválida!".
  • 7:10 - 7:14
    Então, vamos testar,
    vou dar o "Run".
  • 7:14 - 7:17
    Ele deu um erro aqui,
    falando que na linha 20
  • 7:17 - 7:22
    tem um problema "Match (escolha)",
    sintaxe inválida.
  • 7:22 - 7:26
    Provavelmente isso aconteceu
    por causa da versão do Python,
  • 7:26 - 7:31
    onde não existe essa estrutura
    ainda na versão escolhida.
  • 7:31 - 7:34
    Então, vou procurar por
    uma outra plataforma online
  • 7:34 - 7:35
    para executarmos
    o nosso código.
  • 7:35 - 7:41
    Então, vou escrever "python online",
    ou pesquisar aqui,
  • 7:41 - 7:46
    Vou usar essa GDB online,
    que aqui eu consigo executar
  • 7:46 - 7:49
    várias linguagens de programação,
    inclusive o Python
  • 7:49 - 7:53
    na versão aqui que
    aceita o "match case".
  • 7:53 - 7:56
    Então, eu vou copiar
    o código anterior
  • 7:56 - 8:00
    e colocar aqui nessa nova plataforma
    e vou dar o "Run.
  • 8:00 - 8:02
    Maravilha, funcionou.
  • 8:02 - 8:07
    Então, no caso eu vou
    escolher a soma,
  • 8:07 - 8:12
    vou colocar o número 5 e o número 6
    e o resultado da soma foi 11,
  • 8:12 - 8:15
    ou seja, como eu coloquei o valor 1,
    fiz a escolha 1,
  • 8:15 - 8:19
    ele executou este "case"
    com o valor 1.
  • 8:19 - 8:24
    Vou testar agora com uma opção
    que não existe, não é 1, 2, 3 ou 4.
  • 8:24 - 8:27
    Vou colocar 9,
    por exemplo,
  • 8:27 - 8:30
    e vou colocar 2 números
    quaisquer aqui
  • 8:30 - 8:32
    e ele vai mostrar
    "Operação inválida!",
  • 8:32 - 8:35
    ou seja, o "escolha",
    como tinha o valor 9,
  • 8:35 - 8:39
    não era nem o 1, 2, 3 ou 4,
    ele veio aqui para o último,
  • 8:39 - 8:41
    que é o "case" padrão
    que nós temos.
  • 8:41 - 8:44
    Com isso nós vimos as estruturas
    condicionais no Python,
  • 8:44 - 8:49
    o "if", "else", o "elif" e, também,
    a nova versão com o "match case".
Title:
DDD CAP03 2024 VA03 PYTHON ESTRUTURAS CONDICIONAIS
Video Language:
Portuguese, Brazilian
Duration:
08:53

Portuguese, Brazilian subtitles

Revisions Compare revisions