Tema: Sentencia
Ver Mensaje Individual
  #10 (permalink)  
Antiguo 23/04/2014, 14:30
Avatar de Italico76
Italico76
 
Fecha de Ingreso: abril-2007
Mensajes: 3.303
Antigüedad: 17 años, 7 meses
Puntos: 292
Respuesta: Sentencia

Soy nuevo en Python.... pero llamar a main() desde main() no es recursivo como si fuera en otro lado ? yo lo haria con un while(..)

Cita:
Iniciado por sukoy Ver Mensaje
def main():
'''comprueba los datos, si son validos lanza la funcion calcular_imc
si no vuelve a lanzar la funcion main'''

m, a = get_data()
lista_datos_validos = [...]
if m in lista_datos_validos:
print calcular_imc(m, a)
else:
print 'intenta de nuevo'
main()

main()[/HIGHLIGHT]
Por otro lado las funciones no deberian devolver un texto sino ser lo mas generales posibles y devolver solo lo que calculan y mas si se llaman calcular_algo()


def calcular_imc(m, a):
''' haz los calculos '''
. . .

return 'Su IMC es x...'


deberia ser.:


def calcular_imc(m, a):
''' haz los calculos '''
. . .

return imc


y en main() redactar el mesaje al usuario
__________________
Salu2!