Resumo: neste tutorial, você aprenderá como usar a declaração if
do Python para executar um bloco de código com base em uma condição.
Uma simples declaração if do Python
Você usa a declaração if
para executar um bloco de código com base em uma condição especificada.
A sintaxe da declaração if
é a seguinte:
if condition:
if-block
A declaração if
verifica a condição primeiro.
Se a condição for avaliada como True
, ele executa as instruções no bloco if. Caso contrário, ele ignora as instruções.
Observe que os dois pontos (:
) que seguem condition
são muito importantes. Se você esquecer, receberá um erro de sintaxe.
O fluxograma a seguir ilustra a declaração if:
Por exemplo:
age = input('Enter your age:')
if int(age) >= 18:
print("You're eligible to vote.")
Este exemplo solicita que você insira sua idade. Se você digitar um número maior ou igual a 18
, aparecerá uma mensagem "You're eligible to vote"
na tela. Caso contrário, não faz nada.
A condição int(age) >= 18
converte a string de entrada em um número inteiro e a compara com 18.
Enter your age:18
You're eligible to vote.
Veja o seguinte exemplo:
age = input('Enter your age:')
if int(age) >= 18:
print("You're eligible to vote.")
print("Let's go and vote.")
Neste exemplo, se você inserir um número maior ou igual a 18
, verá duas mensagens.
Neste exemplo, a indentação é muito importante. Qualquer declaração que segue a declaração if
precisa ter quatro espaços.
Se você não usar o recuo corretamente, o programa funcionará de maneira diferente. Por exemplo:
age = input('Enter your age:')
if int(age) >= 18:
print("You're eligible to vote.")
print("Let's go and vote.")
Neste exemplo, a declaração final sempre é executada independentemente da declaração if
. A razão é que condition
não pertence ao bloco if
:
Enter your age:11
Let's go and vote.
Declaração if…else do Python
Normalmente, você deseja executar uma ação quando uma condição é True
e outra ação quando a condição é False
.
Para fazer isso, você usa a declaração if...else
.
O seguinte mostra a sintaxe da declaração if...else
:
if condition:
if-block;
else:
else-block;
Nesta sintaxe, if...else
executará o if-block
se a condição for avaliada como True
. Caso contrário, ele executará o bloco else-block
.
O fluxograma a seguir ilustra a declaração if..else
:
O exemplo a seguir ilustra como usar a declaração if...else
:
age = input('Enter your age:')
if int(age) >= 18:
print("You're eligible to vote.")
else:
print("You're not eligible to vote.")
Neste exemplo, se você inserir sua idade com um número menor que 18, verá a seguinte mensagem: "You're not eligible to vote."
Enter your age:11
You're not eligible to vote.
Declaração if…elif…else do Python
Se você quiser verificar várias condições e executar uma ação de acordo, poderá usar a declaração if...elif...else
. O elif
significa else if
.
Aqui está a sintaxe se a declaração if...elif...else
:
if if-condition:
if-block
elif elif-condition1:
elif-block1
elif elif-condition2:
elif-block2
...
else:
else-block
A declaração if...elif...else
verifica cada condição (if-condition
, elif-condition1
, elif-condition2
, …) na ordem em que aparecem na declaração até encontrar aquela que resulta em True
.
Quando a declaração if...elif...else
encontra uma, ela executa a declaração que segue a condição e ignora o teste das condições restantes.
Se nenhuma condição for avaliada como True
, a declaração if...elif...else
executará a declaração na ramificação else
.
Note que o bloco else
é opcional. Se você omitir e nenhuma condição for True
, a declaração não fará nada.
O fluxograma a seguir ilustra a declaração if...elif...else
:
O exemplo a seguir usa a declaração if...elif..else
para determinar o preço do ingresso com base na idade:
age = input('Enter your age:')
# convert the string to int
your_age = int(age)
# determine the ticket price
if your_age < 5:
ticket_price = 5
elif your_age < 16:
ticket_price = 10
else:
ticket_price = 18
# show the ticket price
print(f"You'll pay ${ticket_price} for the ticket")
Neste exemplo:
- Se a idade de entrada for inferior a 5 anos, o preço do ingresso será de US$ 5.
- Se a idade de entrada for maior ou igual a 5 e menor que 16 anos, o preço do ingresso será de US$ 10.
- Caso contrário, o preço do ingresso é de US$ 18.
Resumo
- Use a declaração
if
quando quiser executar um bloco de código com base em uma condição. - Use a declaração
if...else
quando quiser executar outro bloco de código se a condição não forTrue
. - Use a declaração
if...elif...else
quando quiser verificar várias condições e executar o bloco de código correspondente que segue a condição avaliada comoTrue
.