Condições If¶
Quando temos a necessidade de executar algum código apenas se se verificar dada uma condição, podemos utilizar um if
(se).
if {condicao}:
{código a executar se a condição for verdadeira}
Podemos ainda executar operações se a condição for falsa, através de um else
(caso contrário):
if {condicao}:
{código a executar se a condição for verdadeira}
else:
{código a executar se a condição for falsa}
Existe, por fim, a opção de verificar mais que uma condição, com um elif
(else
+ if
):
if {condicao 1}:
{código a executar se a condição for verdadeira}
elif {condicao 2}:
{código a executar se a condição 1 for falsa e a condição 2 for verdadeira}
else:
{código a executar se ambas as condições forem falsas}
(Nota: as chavetas { }
não devem ser escritas, são apenas para representar que o texte deve ser substituído por alguma coisa)
x = 20
y = 35
if x>y:
print("x é maior que y")
elif x<y:
print("x é menor que y")
else:
print("x e y são iguais")
x é menor que y
Na sintaxe (maneira como se escreve), não nos devemos esquecer dos dois pontos :
no final da linha, a seguir à condição.
Outra coisa muito importante de realçar aqui é a indentação. Chamamos indentação ao espaço entre o início da linha e o texto nela escrito. Um parágrafo, de acordo com as regras do portugês, deverá estar indentado.
Neste caso, a maneira de o Python saber que operações estão dentro do if
é através da indentação. Todas estas operações deverão ter uma indentação maior que a do if
, ou seja, se o if
estiver no início da linha, as operações têm que ter pelo menos um espaço no início da linha. O número de espaços não é importante (podendo também ser um Tab
, a tecla por cima do Caps Lock), sendo usual usar 2 a 4 espaços. De notar que é também importante que todas as operações tenham o mesmo número de espaços, se não obteremos um erro.
if 3 > 2:
print("Esta operação está dentro do if")
print("Esta também")
#print("Se o comentário desta for retirado, ocorrerá um erro")
print("Esta operação está fora do if")
Esta operação está dentro do if Esta também Esta operação está fora do if
Quando estamos interessados em verificar mais que uma condição, podemos usar um if
dentro de outro, ou operações lógicas (and
, or
, ...).
x = 3
if x > 2:
if x < 5:
print("x está no intervalo ]2,5[")
if x > 2 and x < 5:
print("x está no intervalo ]2,5[")
x = 10
if x == 0 or x == 10:
print("x é igual a 0 ou a 10")
x está no intervalo ]2,5[ x está no intervalo ]2,5[ x é igual a 0 ou a 10