Python 3 - Instruções IF ... ELIF ... ELSE
A else declaração pode ser combinada com um ifdeclaração. Aelse instrução contém um bloco de código que é executado se a expressão condicional na instrução if for resolvida para 0 ou um valor FALSE.
A instrução else é uma instrução opcional e pode haver no máximo apenas uma else declaração seguinte if.
Sintaxe
A sintaxe do if...else declaração é -
if expression:
statement(s)
else:
statement(s)
Diagrama de fluxo
Exemplo
#!/usr/bin/python3
amount = int(input("Enter amount: "))
if amount<1000:
discount = amount*0.05
print ("Discount",discount)
else:
discount = amount*0.10
print ("Discount",discount)
print ("Net payable:",amount-discount)
Resultado
No exemplo acima, o desconto é calculado sobre o valor de entrada. A taxa de desconto é de 5%, se o valor for inferior a 1.000, e de 10% se for superior a 10.000. Quando o código acima é executado, ele produz o seguinte resultado -
Enter amount: 600
Discount 30.0
Net payable: 570.0
Enter amount: 1200
Discount 120.0
Net payable: 1080.0
A declaração elif
o elif A instrução permite que você verifique várias expressões como TRUE e execute um bloco de código assim que uma das condições for avaliada como TRUE.
Semelhante ao else, a elifdeclaração é opcional. No entanto, ao contrárioelse, para o qual pode haver no máximo uma declaração, pode haver um número arbitrário de elif declarações após um if.
sintaxe
if expression1:
statement(s)
elif expression2:
statement(s)
elif expression3:
statement(s)
else:
statement(s)
O Core Python não fornece instruções switch ou case como em outras linguagens, mas podemos usar as instruções if..elif ... para simular switch case da seguinte maneira -
Exemplo
#!/usr/bin/python3
amount = int(input("Enter amount: "))
if amount<1000:
discount = amount*0.05
print ("Discount",discount)
elif amount<5000:
discount = amount*0.10
print ("Discount",discount)
else:
discount = amount*0.15
print ("Discount",discount)
print ("Net payable:",amount-discount)
Quando o código acima é executado, ele produz o seguinte resultado -
Enter amount: 600
Discount 30.0
Net payable: 570.0
Enter amount: 3000
Discount 300.0
Net payable: 2700.0
Enter amount: 6000
Discount 900.0
Net payable: 5100.0