Estoy tratando de que la entrada del usuario llame a una función.

Mi código:

class the_proccess():

    the_route = input("Which function do you want to use? \n\n 1) The first one. \n\n 2) The second one. \n\n 3) The first one and then the second one. \n\n Please enter the corresponding number and hit enter >>>>> ")

    if the_route == 1:
        first()
    elif the_route == 2:
        second()
    elif the_route == 3:
        first()
        second()

    def first():
        print("First function")

    def second():
        print("Second function")

Sin embargo, cuando selecciono la opción, el proceso se detiene. No estoy muy seguro de lo que estoy haciendo mal y esta es la primera vez que intento hacer algo como esto.

1
Maverick 29 ene. 2018 a las 16:28

2 respuestas

La mejor respuesta

Ahora esto funciona como quieras.

class the_proccess(object):

def first(self):
    print("First function")

def second(self):
    print("Second function")

def __init__(self):
    self.the_route = input("Which function do you want to use? \n\n 1) The first one. \n\n 2) The second one. \n\n 3) The first one and then the second one. \n\n Please enter the corresponding number and hit enter >>>>> ")

    if self.the_route == 1:
            self.first()
    elif self.the_route == 2:
            self.second()
    elif self.the_route == 3:
            self.first()
            self.second()

a = the_proccess();
2
FrAxl93 29 ene. 2018 a las 13:57

En este código, la variable the_route es una cadena porque la función de entrada devuelve una cadena. Tu podrías intentar

    if int(the_route) == 1:
0
Anonymous 17 may. 2020 a las 14:57