0
이 프로그램이 있으며 각 메뉴 옵션을 실행하고 싶습니다. 기본적으로 사용자가 로그인하면 메뉴가 나타나고 하나를 누르면 작동합니다. 그러나 2를 누르면 '검색 학생이 정의되지 않았습니다'라는 메시지가 나옵니다. 그 내용에 대해 이해하지 못합니다. 프로그램에서 함수를 이동하려고 시도했지만, 그렇게하면 다른 오류가 발생합니다. 나는 이것을 구조화하는 올바른 방법을 찾고있다. 기능이 메뉴보다 먼저 나오나요? 로그인 후에? 그렇다면 어떻게해야합니까?NameError : name ''이 (가) 정의되지 않았습니다.
choice = input
def PrintMenu():
print("\n*******************")
print("\n School menu system")
print("\n*******************")
print(" [1] Add Student")
print(" [2] Search Student")
print(" [3] Find Report")
print(" [4] Exit")
choice = input ("Enter a choice: ")
#while choice =='':
if choice == '1':
AddStudent()
elif choice == '2':
SearchStudent(ID)
elif choice == '3':
FindReport()
elif choice == '4':
print("\nExiting the system......\n")
sys.exit(0)
else:
print ("\n not valid choice")
PrintMenu()
def SearchStudent(ID):
with open("Students.txt", 'r') as file:
for i in file:
data = i.rstrip().split(",")
if data[0] == ID:
return "The student you require is: {} {}".format(data[2], data[1])
return "No matches found"
search = input("Please enter a student ID: ")
print(SearchStudent(search))
이해가 안 가기. 메뉴 이전에 로그인 기능이 있고 addstudent 기능이 있는데 메뉴 전후에 입력을 시도했지만 여전히 같은 오류가 발생합니다. – CV9
@ cᴏʟᴅsᴘᴇᴇᴅ 어떤 아이디어가 있습니까? 또는 제안? – CV9
추가 도움으로 답변을 업데이트했습니다. –