내가 할 수없는 것 같습니다. 약간 수정이 필요한 커다란 프로그램이 있습니다.사용자 옵션 확인 - Python
사용자가 유효한 옵션을 입력해야만 계속 진행할 수 있습니다. '1', '2', '3', '4'이외는 유효하지 않습니다.
def GetResponse():
global Response
Response = (input("Enter Option number: "))
이것이 코드 인 경우 아무거나 입력해도 메뉴가 계속 표시됩니다. 메뉴가 나오기를 계속하는 것 외에는 아무 일도 일어나지 않습니다. 나는 그것을 약간 수정 만 응답 정수 할 경우 (문자열 또는 숫자) :하지만,
def GetResponse():
global Response
Response = (int(input("Enter Option number: ")))
그런 다음 여기를 유효한 옵션은 내가 텍스트의 일부를 입력하면 반면이 해당 옵션으로 이동 입력 한 경우 (내가 알고있는 것으로 예상 됨) 오류가 발생했습니다.
내가 혼란스러워하는 이유는 내가 int로 변경하면 입력 한 옵션에만 응답하는 반면, int를 가져 가면 얻을 수 있습니다. 오류는 없지만 프로그램은 유효한 입력에 응답하지 않습니다.
이 정보가 분명하지 않은 경우 죄송합니다. 내가 설명 할 수있는 가장 좋은 방법이야. 실제 응답
들여 쓰기가 잘못되었습니다. 또한 우리는 보통 변수와 함수에'lower_case'를 사용하여 클래스에'CamelCase'를 예약합니다. 또한 전역 변수를 수정하는 대신 응답을 보내는 것이 좋습니다. – katrielalex
@ katrielalex의 제안에 대해 자세히 설명합니다. 전역은 좋지 않습니다. 프로그램의 모든 부분에서 프로그램의 다른 부분에서 사용되는 값을 수정할 수있는 코딩 스타일을 권장합니다. 이로 인해 코드의 한 부분에서 값을 변경하면 예상하지 못했을 때 문제가 발생하고 프로그램 전체가 불어납니다. –
코드가 구문 검사를 통과 할 수 있도록 들여 쓰기를 수정했습니다. –