Ao escrever um programa, quase sempre há a necessidade de criar um algoritmo ramificado com várias variantes de condição. Por exemplo, para usar diferentes pacotes de idioma ou modos de configuração de software para usuários com diferentes preferências de idioma. Neste artigo, vamos examinar uma das construções mais comumente usadas e simples do Python3 - o if!
O que é uma construção condicional if em Python?
Como mencionado acima, os algoritmos são frequentemente ramificados e construtos de linguagem especiais são usados para implementar diferentes cenários:
A lógica é, se [condição-1] for verdadeira, então execute [instrução-1]. Caso contrário (primeira falsa), se [condição-2] for verdadeira, então execute [instrução-2], caso contrário (todas as anteriores são falsas), execute [instrução-3]. Note que a indentação ou tabulação determina se a próxima linha de instrução se referirá à construção ou será separada dela. Vamos considerar o exemplo mais simples de uso:
min=1
if max>5 and min<2:
print(max+min)
As variáveis min e max são definidas antecipadamente e a condição é que, se max for maior que 5 e min for menor que 2, então a instrução print(max+min) deve ser executada. A instrução a ser executada, se a condição for verdadeira, é separada por indentações, como print(max+min) neste exemplo. O resultado do programa será assim:
end
E se variáveis que não satisfazem a condição fossem especificadas, a construção condicional if não executaria as instruções incluídas nela. E a saída seria assim:
A seguinte sintaxe é usada para compor a condição:
- [value-1] == [value-2] verificação de igualdade;
- [value-1] != [value-2] verificação de desigualdade;
- [value-1] >= ou ou
Cada uma das expressões apresentadas contém operandos [value-1] e [value-2], bem como um operador entre eles, a ligação pode ser fornecida por valores adicionais ou e. E se você precisar realizar uma ação quando a condição estiver errada? Há um bloco else para isso!
Bloco Else
A lógica da sintaxe anterior era verificar os dados e executar a ação apropriada se o valor fosse True. Mas se for necessário introduzir um ramificação com uma ação quando a condição não for cumprida, usamos else:
min=1
if max>5 and min<2:
print(max+min)
else:
print(‘Values din\’t calculate')
print (‘end’)
Neste exemplo, a instrução também verifica a condição, mas caso não seja cumprida, o controle passará para o bloco else e o texto será exibido na tela do usuário:
end
Se o comando de design for uma única linha, a sintaxe a seguir será aceitável if max>5 and min<2: print(max+min):
min=1
if max>5 and min<2: print(max+min)
else: print('Values din\'t calculate')
print ("end")
Normalmente, essas construções são usadas para notificar os usuários sobre ações ou mudanças na lógica do algoritmo. Mas se for necessário verificar outra condição, existe o elif para tal condição.
Como você pode ver, esta solução é muito mais longa do que a designação de direitos numéricos, no entanto, é igualmente funcional e cumpre as tarefas. Todas as etapas do tutorial podem ser realizadas em servidores poderosos na nuvem. Serverspace fornece servidores VPS isolados para uso comum e virtualizado.
Levará algum tempo para implantar a capacidade do servidor. Após isso, você pode se conectar de qualquer uma das maneiras convenientes.
Bloco Elif
O ponto deste bloco é verificar uma nova condição lógica se o if [condição] for False. Por exemplo, este bloco pode ser útil ao escolher entre dois caminhos:
if language == ‘en’:
print (‘Good evening!’)
elif language == ‘fr’:
print (‘Bonsoir!’)
else: print (‘Language udefined’)
Se o usuário selecionar en, a condição padrão será cumprida. Se fr for selecionado, o bloco elif assumirá e o comando abaixo será executado. No entanto, se nenhuma das condições for cumprida, o bloco else assumirá. O resultado da instrução acima será a saída:
Observe que até 2 ramificações do algoritmo são aceitáveis para este tipo de construção. Por exemplo, se os idiomas forem mais ou iguais a três, é melhor usar a construção switch case, que é a mais adequada para o trabalho. Mas, e se você precisar usar condições que dependem umas das outras na lógica do algoritmo? É possível torná-las aninhadas!
Construções if aninhadas
Para cenários mais complexos, você pode usar construções aninhadas, que funcionam da mesma maneira que as normais, executando um bloco de instruções aninhadas dentro delas. Vamos ver um exemplo:
mode = "child"
if language == 'en':
if mode == "child":
print ("Hi, welcome to child mode!")
else: print ("Hi, welcome to adult mode!")
elif language == 'fr':
if mode == "child":
print ("Bonjour, bienvenue en mode enfant!")
else: print ("Bonjour, bienvenue en mode adulte!")
Essa instrução, dependendo do idioma selecionado pelo usuário e do modo em que o usuário está, exibe a saudação apropriada. Observe que a indentação das condições aninhadas também é preservada! A saída desta instrução será:
Como as condições para esse caminho coincidem, é desejável usar aninhamento para duas ou três ramificações. Em outros casos, um switch case funcionará melhor!
Saber e entender como usar corretamente as declarações condicionais é uma parte fundamental das habilidades de programação. Elas fornecem a oportunidade de criar aplicativos mais interativos e adaptáveis que podem responder a diferentes dados de entrada e condições de trabalho. Independentemente da complexidade da tarefa, as construções condicionais ajudarão você a implementar a lógica correta e a tornar seu código mais legível e fácil de manter.