Saia da instrução if em Python

Muhammad Maisam Abbas 30 janeiro 2023
  1. Saia de uma instrução if com break em Python
  2. Saia de uma instrução if com o método de função em Python
Saia da instrução if em Python

Este tutorial discutirá os métodos que você pode usar para sair de uma instrução if em Python.

Saia de uma instrução if com break em Python

O break é uma instrução de salto que pode sair de um loop se uma condição específica for satisfeita. Podemos usar a instrução break dentro de uma instrução if em um loop.

O principal objetivo da instrução break é mover o fluxo de controle do nosso programa para fora do loop atual. O programa abaixo demonstra como você pode usar a instrução break dentro de uma instrução if.

for i in range(10):
    print(i)
    if i == 5:
        break

Produção:

0
1
2
3
4
5

Desenvolvemos um programa usando a instrução break que sai do loop se o valor da variável i se tornar igual a 5. A única coisa que falta nessa abordagem é que só podemos usá-la dentro de uma instrução if dentro de um loop. Não podemos usar isso dentro de uma instrução if aninhada, conforme mostrado abaixo.

i = 0
if i % 2 == 0:
    if i == 0:
        break
    if i > 0:
        print("even")
print("Broken")

Produção:

File "<ipython-input-3-efbf2e548ef1>", line 4
    break
    ^
SyntaxError: 'break' outside loop

Se quisermos sair de uma instrução if pura que não está contida em um loop, temos que utilizar a próxima abordagem.

Saia de uma instrução if com o método de função em Python

Podemos usar um método alternativo para sair de uma instrução if ou aninhada if. Colocamos nossa instrução if aninhada dentro de uma função e usamos a instrução return sempre que queremos sair.

O código a seguir modifica o exemplo anterior de acordo com o método da função.

def something(i):
    if i % 2 == 0:
        if i == 0:
            return
        if i > 0:
            print("even")


if __name__ == "__main__":
    something(0)
    print("Broken out")

Produção:

Broken out

Desenvolvemos um programa que usa o método de função para sair de várias instruções if com a instrução return. Esse método é limpo e muito superior a qualquer outro método que possa ser usado para essa finalidade.

Muitos fóruns mencionam outro método para este propósito envolvendo uma instrução goto. Por padrão, sabemos que Python não tem suporte para uma instrução goto.

Mas, em 2004, um módulo goto foi lançado como parte de uma elaborada piada do Dia do Dia da Mentira que os usuários começaram a usar seriamente. Não o mencionamos porque não é um método elegante e sua página oficial indica que ele nunca deve ser usado dentro de qualquer código de produção.

Muhammad Maisam Abbas avatar Muhammad Maisam Abbas avatar

Maisam is a highly skilled and motivated Data Scientist. He has over 4 years of experience with Python programming language. He loves solving complex problems and sharing his results on the internet.

LinkedIn

Artigo relacionado - Python Condition