3.9 Comando If
E se quisermos apresentar uma mensagem diferente para o usuário dependendo do valor de entrada? Vamos atribuir um valor para uma variável numero e pedir para o usuário entrar com um valor. Devemos verificar se os valores são iguais como um jogo de adivinhação em que o usuário deve adivinhar o número definido.
numero =
chute = input(‘Digite um número: ’)
Até aqui, nenhuma novidade. Agora, devemos mostrar a mensagem “Você acertou” caso o numero seja igual ao chute , e “Você errou” caso o numero seja diferente do chute . Em português, seria assim:
Se chute igual a número: “Você acertou” Se chute diferente de número: “Você errou”
Ou melhor:
Se chute igual a número: “Você acertou” Senão: “Você errou”
Podemos traduzir isso para código Python. O Python possui o operador condicional para representar a palavra se que é o if e a palavra senão que é o else. A sintaxe ficaria:
if chute == numero:print('Você acertou') else:print('Você errou')Este código ainda não funciona porque o Python entende as instruções if e else como blocos e os blocos devem seguir uma indentação. Como print(‘Você acertou’) é a instrução que deve ser executada caso a verificação do if seja verdadeira, devemos ter um recuo para a direita em quatros espaços:
if chute == numero: print('Você acertou')else:
print('Você errou')Caso contrário, o interpretador vai acusar erro de sintaxe. Dessa maneira, o código fica mais legível
e o que em outras linguagens é uma escolha do programador, o Python te obriga a fazer forçando, desta maneira, a organizar o código. Tudo que estiver no bloco da primeira condição (doif ) deve estar indentado, ou seja, recuado para direita. Assim como as instruções que estiverem no bloco do else .
No fim, nosso programa, que salvaremos em um arquivo chamado adivinhacao.py fica:
numero =
chute = input(‘Digite um número: ’)
if chute == numero: print('Você acertou')else:
print('Você errou')E executamos no terminal:
Você errou
Note que a condição de um if deve ser um booleano, ou seja, True ou False. Passamos a expressão chute == numero que vai checar se ela é verdadeira ou não. Caso seja verdadeira, vai executar o código dentro do bloco do if, senão, vai executar o código dentro do else. Agora, vamos chutar o número 42 e verificar se tudo está funcionando:
Você errou
Algo de errado aconteceu! Digitamos o número correto e mesmo assim o programa não funcionou como esperado. Vamos entender o que aconteceu.