Я написал простую программу для пользователя sign_up & log_in System с Python. Я использовал много самоопределяющихся функций, чтобы сделать коды элегантными. Вот функция 'choose_page':
def choose_page():
print('Welcome to the code system!')
print('****************************\n')
print('there are the three options:\n'
'1.sign up\n'
'2.log in\n'
'3.quit')
print('****************************\n')
option = eval(input('Please input your option:'))
return option
А вот функция 'sign_up':
def sign_up():
global customer
# global option
# global option2
..................
..................(many codes)
option2 = eval(input('Now you can log in the main page by inputting 2 or 0 to return the sign_page: '))
return option2
Я также написал функции самоопределения log_in и quit, затем Я могу сопоставить их так, как я хочу, вот так (этот шаг без функции 'quit', поскольку сейчас это не имеет значения):
if choose_page() == 1:
sign_up()
if sign_up() == 0:
choose_page()
elif sign_up() == 2:
log_in()
elif choose_page() == 2:
log_in()
Я запускаю его, но возникла проблема, похоже на ошибку logi c:
Когда я вошел в «choose_page» и ввел 1, он натолкнулся на «sign_up», в конце «sign_up», я ввел либо 2, либо 0, он все еще сталкивался с «sign_up» снова и снова без Остановка.
Есть ли ошибка logi c, когда я использую эти самоопределяемые функции? Заранее спасибо за помощь.