Ver Mensaje Individual
  #4 (permalink)  
Antiguo 27/05/2014, 14:36
Principe_Azul
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: ¿Evitar que un código se interrumpa por un dato incorrecto?

Koan aquí tenés un código correcto:

Código Python:
Ver original
  1. def estado_agua(num):
  2.     if (num.isdigit()) or num[:1] == "-" and num[1:].isdigit():
  3.         Num = int(num)
  4.         if (Num <= 0):
  5.             return ('La temperatura es %d grados. Su estado es solido.' % Num)
  6.         elif (Num > 0) and (Num <= 100):
  7.             return ('La temperatura es %d grados. Su estado es liquido.' % Num)
  8.         elif (Num > 100):
  9.             return ('La temperatura es %d grados. Su estado es gaseoso.' % Num)
  10.     else:
  11.         return ('Valor incorrecto')
  12.  
  13. valor = raw_input()
  14.  
  15. print estado_agua(valor)
  16.  
  17. raw_input()

El tuyo tiene varios errores.
Por ejemplo este:

return ('La temperatura es '+str(num)+' grados. Su estado es solido.'

Debés evitar concatenar cadenas, además si el valor es un int, tratalo como tal.

Buena suerte!!