[ Foro de Python ]
import string
def descuentoalmuerzo():
nombre= input("digite el nombre")
codigo= input("digite el codigo de estudiante")
dia= input("digite el dia de la semana")
anho= int(input("digite el anho de ingreso"))
almuerzo= "2000"
letra = nombre[0]
# Criterios para el descuento
if ((letra == "l") and (dia == "miercoles") and (anho >= "2013")):
descuento= almuerzo * 0.2
valorpagar= almuerzo- descuento
elif ((dia == "lunes") or (dia == "viernes")):
descuento= almuerzo * 0.25
valorpagar= almuerzo - descuento
elif(dia == "jueves")and (codigo [5] == "0"):
descuento= almuerzo * 0.50
valorpagar= almuerzo - descuento
else:
descuento= "0"
valorpagar= "2000"
print ("su nombre es: " , nombre)
print ("su codigo es: ", codigo)
print (" el descuento es: " , descuento)
print (" el valor a pagar es: ", valorpagar)
def main():
descuentoalmuerzo()
main()
cuando lo ejecuto con la condicion de que la ceroesima letra es l aparece esto:
digite el nombreluis
digite el codigo de estudiante1329750
digite el dia de la semanamiercoles
digite el anho de ingreso2013
Traceback (most recent call last):
File "C:\Users\Admi7\Downloads\descuento almuerzo2.py", line 31, in <module>
main()
File "C:\Users\Admi7\Downloads\descuento almuerzo2.py", line 29, in main
descuentoalmuerzo()
File "C:\Users\Admi7\Downloads\descuento almuerzo2.py", line 10, in descuentoalmuerzo
if ((letra == "l") and (dia == "miercoles") and (anho >= "2013")):
TypeError: unorderable types: int() >= str()
Siento el enorme retraso en contestar, exceso de trabajo.
Volviendo a tu pregunta: el mensaje de error es claro, "unorderable types: int() >= str()", no se puede comparar un string (cadena de texto), porque no es algo "ordenable".
Ese
and (anho >= "2013")):
Debería ser
and (anho >= 2013)):
(No se puede continuar esta discusión porque tiene más de dos meses de antigüedad. Si tienes dudas parecidas, abre un nuevo hilo.)