Olá, tudo bem? Quando uso else? Quando uso elif? Quando estou criando um laço, não tenho a certeza de qual dos dois escolho. Alguém consegue detalhar mais sobre?
Olá, tudo bem? Quando uso else? Quando uso elif? Quando estou criando um laço, não tenho a certeza de qual dos dois escolho. Alguém consegue detalhar mais sobre?
Imagina que você queira criar saudações diferentes baseado no sexo da pessoa. Seu sistema é um pouco mais antigo e tem algo assim.
pessoa = ("Julio", "m")
if (pessoa[1] == "m"):
print(f"O {pessoa[0]} é uma pessoa muito legal")
else:
print(f"A {pessoa[0]} é uma pessoa muito legal")
Como os únicos dois sexos eram 'f' ou 'm', se não for 'm' ele só pode ser 'f', então nesse caso você usuaria o else. Agora sua empresa pediu para você adaptar o seus sistema para lidar com o público mais atual e utilizar o gênero da pessoa, tendo que aceitar não binários como um gênero. Então você faz a mudança:
pessoa = ("Julio", "m")
if (pessoa[1] == "m"):
print(f"O {pessoa[0]} é uma pessoa muito legal")
elif (pessoa[1] == "f"):
print(f"A {pessoa[0]} é uma pessoa muito legal")
else:
print(f"E {pessoa[0]} é uma pessoa muito legal")
O else sempre vai ser executado se a condição do if não for satisfeita. O elif, é executado se a condição do if não for satisfeita e se a condição dele próprio for aceita. Se você tem familiaridade com C é similar a sintaxe1 do C else if (condicao) { codigo }
Olá Matheus, ainda sou iniciante na parte de programação, mas acho que posso te ajudar.
Usando um exemplo de uma restrição do input. Suponha que se o valor for menor que 0 você deva printar "Valor negativo", Suponha também que deva printar "Zero", quando o valor do input for "0", Suponha agora que se o valor for positivo e par você deva printar "Valor positivo par", E por fim, printar "Valor positivo ímpar" para o caso de um valor maior que 0 e ímpar.
O código ficaria algo como:
numero = int(input("Digite um valor: ")
if(numero < 0):
print("Valor negativo")
elif(numero == 0):
print("Zero")
elif(numero > 0 and numero %2 == 0"):
print("Valor positivo par")
else:
print("Valor positivo ímpar")
A diferença entre o elif e else nesse caso são: que para o else, nesse caso não há outra escolha senão um número ímpar e positivo, devido os elifs usados anteriormente, mas isso pode variar de acordo com a sua preferência.
Espero ter ajudado, e caso eu esteja errado, alguém me corrija, por favor.