Aulas do bloco

← Aulas

PythonTrilha · etapa 51h07

Seleção com `if`, `else` e operadores lógicos

Vídeos desta etapa, na ordem do portal:

  1. Condições booleanas · 35 min
  2. Operadores Booleanos · 32 min
Use o número do vídeo e o horário indicado como referência nos arquivos locais.

As aulas 1 a 4 deixaram print(), variável, operações com string e input() com int() prontos no console. Esta aula retoma len(), índice e fatiamento para criar condições de verdade. Ela introduz bool com True e False, comparação, if e else e or, and e not para desviar o fluxo do programa.

O que foi falado

  1. True, False e tipo bool

    Vídeo 1 · 00:00:47

    True e False são os dois valores lógicos do Python e o tipo deles é bool. Os nomes são sensíveis a maiúsculas e minúsculas, então true minúsculo dá erro. No debugger dá para ver a variável guardando True ou False e o tipo bool.

    Python
    ligado = True
    desligado = False
    print(ligado)
    print(desligado)

    Saída

    True
    False
  2. Comparar com ==, !=, >, < e in

    Vídeo 1 · 00:04:22

    Comparações devolvem True ou False. == testa igualdade, = atribui e != testa diferença. >, >=, < e <= comparam números; com strings, a comparação é lexicográfica pelos caracteres Unicode, não uma ordenação alfabética que ignora acentos ou caixa. "azul" == "Azul" é False. in verifica se um trecho está contido em outro texto.

    Python
    print(10 == 10)
    print("azul" == "Azul")
    print("ana" in "Mariana")

    Saída

    True
    False
    True
  3. if com : e indentação

    Vídeo 1 · 00:16:50

    if testa uma condição e só roda o bloco de baixo se ela for True. A linha é if mais condição mais : e o bloco vem na linha seguinte com deslocamento para a direita. Se a condição for False o programa pula o bloco e segue adiante. A aula usa numero < 10, len(cpf) == 11 para CPF e numero % 2 == 0 para par, com input() convertido por int() quando é número.

    Python
    numero = 7
    if numero < 10:
        print("menor que 10")

    Saída

    menor que 10
  4. else para o caminho do False

    Vídeo 1 · 00:29:31

    else cria o caminho alternativo quando a condição do if é False. Ele fica na mesma coluna do if, escrito como else mais : e com bloco indentado embaixo. No exemplo par ou ímpar, numero % 2 == 0 imprime "par" e o else imprime "impar". Sem else o if sozinho só faz algo no caso True e ignora o resto.

    Python
    numero = 7
    if numero % 2 == 0:
        print("par")
    else:
        print("impar")

    Saída

    impar
  5. Juntar condições com or, and e not

    Vídeo 2 · 00:01:41

    Nas condições booleanas da aula, or aceita pelo menos uma condição verdadeira e and exige ambas. Eles usam curto-circuito: só avaliam o lado direito quando necessário. not inverte o valor lógico. Para negar um conjunto inteiro, agrupe as condições, como not (a == b or a == c). Em geral, and e or devolvem um de seus operandos, que não precisa ser bool.

    Python
    idade = 20
    tem_carteira = True
    if idade >= 18 and tem_carteira:
        print("pode dirigir")

    Saída

    pode dirigir
  6. Telemarketing com fatiamento, or, not e and

    Vídeo 2 · 00:17:16

    O projeto lê o telefone como string e pega o começo com telefone[:4] para testar o prefixo. Primeiro a aula faz com dois if separados e depois junta em prefixo == "0303" or prefixo == "0304". A versão invertida usa not com parênteses para dizer que não é telemarketing. A regra do livro pede três condições juntas com and, só é telemarketing se todas forem True.

    Python
    telefone = "03031234567"
    prefixo = telefone[:4]
    if prefixo == "0303" or prefixo == "0304":
        print("telemarketing")

    Saída

    telemarketing

Conceitos da aula

  • bool
  • if/else
  • operadores de comparação
  • in
  • and
  • or
  • not
  • len()
  • input()
  • int()
  • fatiamento
  • indexação

Reforce este assunto

10 exercíciosComeçar →