O Python suporta as condições lógicas usuais da matemática:

É igual : a == b

Diferente: a! = B

Menor que: a <b

Menor ou igual : a <= b

Maior que: a> b

Maior ou igual : a> = b


Essas condições podem ser usadas de várias maneiras, mais comumente em "instruções if" e loops.


Uma "declaração if" é escrita usando a palavra-chave if.

Sintaxe de instrução Python if

if expressão_de_teste:

    afirmação(s)


Exemplo


# Se o número for positivo, imprimimos uma mensagem apropriada


a = 3

if a > 0:
    print(a, "é um número positivo")

print ("Isso é sempre impresso.")


a = -3

if a > 0:
    print(a, "é um número positivo")

print ("Isso é sempre impresso.")

Resultado:

3 é um número positivo

Isso é sempre impresso

Isso também é sempre impresso.



No exemplo acima, a > 0 é a expressão de teste.

O corpo de if é executado apenas se for avaliado como True.

Quando a variável a é igual a 3, a expressão de teste é verdadeira e as instruções dentro do corpo de if são executadas.


Se a variável a for igual a -3, a expressão de teste será falsa e as instruções dentro do corpo de if serão ignoradas.


A instrução print() fica fora do bloco if (sem indentação). Portanto, é executado independentemente da expressão de teste.


Indentação

O Python conta com recuo (espaço em branco no início de uma linha) para definir o escopo no código. Outras linguagens de programação costumam usar colchetes para esse fim.


Exemplo

Instrução If, sem recuo (gerará um erro):



a = 50
b = 60

if b> a:

print("b é maior que a") # você receberá um erro

Instrução Python if ... else


Sintaxe de if ... else


if expressão_de_teste:

     Corpo_de_se

else:

     Corpo_de_outra_coisa


A instrução if..else avalia a expressão de teste e executará o corpo de if somente quando a condição de teste for verdadeira ( True ).

Se a condição for falsa ( False ), o corpo de else é executado. Recuo é usado para separar os blocos.


Exemplo de if ... else

# Programa verifica se o número é positivo ou negativo

# E exibe uma mensagem apropriada


a = 3


# Tente estas duas variações também.


a = -5
a = 0

if a >= 0:
    print("Positivo ou Zero")
else:
    print("número negativo")
   

Resultado

Positivo ou Zero


Instrução Python if ... elif ... else


# Sintaxe de if ... elif ... else


if expressão_de_teste:

    Corpo_de_se

elif expressão_de_teste :

    Corpo_de_elif

else:

    Corpo_de_outra coisa


O elif é a abreviação de else if. Ele nos permite verificar várias expressões.

Se a condição para if for False, ela verifica a condição do próximo bloco elif e assim por diante.

Se todas as condições forem falsas, o corpo de else será executado.

Somente um bloco entre os vários blocos if ... elif ... else é executado de acordo com a condição.

O bloco if pode ter apenas mais um bloco. Mas pode ter vários blocos elif.



Exemplo de if ... elif ... else

'''Neste programa, verificamos se o número é positivo ou

negativo ou zero e exibir uma mensagem apropriada '''


a = 3,4


# Experimente estas duas variações também:

# a = 0

# a = -4,5


if a > 0:

     print("número positivo")

elif a  == 0:

     print("Zero")

else:

     print("número negativo")
     


Quando a variável a é positiva, o número positivo é impresso.

Se a for igual a 0, Zero será impresso.

Se a for negativo, o número negativo será impresso.



Instruções If aninhadas em Python

Podemos ter uma declaração if ... elif ... else dentro de outra declaração if ... elif ... else. Isso é chamado de aninhamento na programação de computadores.


Qualquer número dessas instruções pode ser aninhado um dentro do outro. Recuo é a única maneira de descobrir o nível de aninhamento. Eles podem ficar confusos, portanto devem ser evitados, a menos que seja necessário.


Python aninhado if exemplo



a = float(input("Digite um número:"))

if a >= 0:
     if a == 0:
         print("Zero")
     else:
         print("número positivo")
else:
     print("número negativo")


A declaração de pass

As instruções if não podem estar vazias, mas se você, por algum motivo, tiver uma instrução if sem conteúdo, insira a instrução pass para evitar erros.


Exemplo


a = 50
b = 60

if b> a:
   pass