error al pasar el valor en python

def row_minimum(x,L): L=L if x=='1': row_minimum1=min(L[0],L[1],L[2],L[3],L[4]) return row_minimum1 elif x=='2': row_minimum2=min(L[5],L[6],L[7],L[8],L[9]) return row_minimum2 elif x=='3': row_minimum3=min(L[10],L[11],L[12],L[13],L[14]) return row_minimum3 table(L) def user_input(y): def user_input(y): if y in ['1','2','3','A','B','C','D','E']: condition = False elif y !=['1','2','3','A','B','C','D','E']: condition = True while condition == True: z=input("Enter a row (as a number) or a column (as and uppercase letter):") if z in ['1','2','3','A','B','C','D','E']: condition = False return z def menu(a,L): if a==1: display_table(L) elif a==2: x=input("Enter a row (as a number) or a column (as and uppercase letter):") user_input(x) print (user_input) if user_input(x) in ['1','2','3']: mini = row_minimum(x,l) print ("2") print("Minimum is:",row_minimum(x,L)) 

este es el progtwig para verificar la entrada del usuario, pero cada vez que pase la entrada pasa por la función pero proporciona una función incorporada en la función user_input en 0x021DCB28> para user_input (y)

Es posible que desee algo como esto:

 def user_input(y): if y in ['1','2','3','A','B','C','D','E']: condition = False else: condition = True while condition == True: z=input("Enter a row (as a number) or a column (as and uppercase letter):") if z in ['1','2','3','A','B','C','D','E']: condition = False return z print user_input('1') print user_input('4') 

Editar

Si obtiene algo como , es porque está imprimiendo la función. (Y no es un error)

 print user_input # This is not wath you want 

Esto en cambio es lo que quieres:

 print user_input(...) # Where ... is the parameter you are giving to your function 

Su código tiene dos definiciones anidadas de user_input , de modo que cuando lo llama, obtiene la definición de la función en lugar de lo que se supone que debe devolver. Elimine una de las def user_input(y): y corrija su sangría y apuesto a que funciona.