afir= "si"
neg= "no"
def apagado(s):
if s== afir or afir.upper() or "Si":
return "Apagando..."
elif s== neg or neg.upper() or "No":
return "¡Apagado cancelado!"
else:
return "Lo siento, no te entendi"
print apagado(1)
# -*- coding: utf-8 -*-
afir= "si"
neg= "no"
s="si" # Este es el valor de entrada, cambia el si por lo que quieras para ver la reacción de la función
def apagado(s):
if s== "si":
return "Apagando..."
elif s== "no":
return "¡Apagado cancelado!"
else:
return "Lo siento, no te entendi"
print apagado(s.lower()) # meto el valor dejándolo en un formato, así simplifico los condicionales.
# -*- coding: utf-8 -*-
afir= "si"
neg= "no"
def apagado(s):
if s== afir or s == afir.upper() or s=="Si":
return "Apagando..."
elif s== neg or s==neg.upper() or s=="No":
return "¡Apagado cancelado!"
else:
return "Lo siento, no te entendi"
print apagado(1)
Howarto escribió:Un tip que te puede facilitar a desarrollar la pieza de código es el uso de los modificadores en la propia entrada ¿Qué quiero decir? que transformes la respuesta del usuario por ejemplo en todo minúsculas y te olvides así de colocar todas las opciones posibles a la hora de hacer los condicionales y demás, has colocado demasiados ("afir or afir.upper() or "Si").
Ejemplo:# -*- coding: utf-8 -*-
afir= "si"
neg= "no"
s="si" # Este es el valor de entrada, cambia el si por lo que quieras para ver la reacción de la función
def apagado(s):
if s== "si":
return "Apagando..."
elif s== "no":
return "¡Apagado cancelado!"
else:
return "Lo siento, no te entendi"
print apagado(s.lower()) # meto el valor dejándolo en un formato, así simplifico los condicionales.
Lo que fallaba en tu código era que en los or te habías equivocado al construirlos, esto arreglaría tu código y daría como output el que no lo entiende.# -*- coding: utf-8 -*-
afir= "si"
neg= "no"
def apagado(s):
if s== afir or s == afir.upper() or s=="Si":
return "Apagando..."
elif s== neg or s==neg.upper() or s=="No":
return "¡Apagado cancelado!"
else:
return "Lo siento, no te entendi"
print apagado(1)