문제

Python3.2,는 방법이 있을 정의 나머지는 기능을 실행?

기본적으로,나는 로그인을 만들 시스템의 개념으로 나의 과정,그리고 수 없었어 대한 대답을 찾을 수 있습니다.

나의 코드는 2 개로 분리하여 파일을 기록,처리하는 입력 및 출력으로 로그파일과 주요 클래스,이러한 데이터베이스로 연결 로그인 코드 자체,etc.

여기에 처리하는 코드 얻고 사용자 입력,나에게 관심에 3,4 선,변환로 연결하여'QUIT0x0',을 최소화하는 기회의 종료되는 코드에 의해 호출 사고입니다.

def getInput(input_string, type):
    result = input(input_string)
    if result.lower == 'quit':
            result = 'QUIT0x0'
    #log the input string and result
    if type == 1:
            with open(logFile, 'a') as log_file:
                    log_file.write('[Input] %s \n[Result] %s\n' %(input_string, result))
                    return result
    #no logging
    elif type == 2:
            return result
    #undefined type, returns 'Undefined input type' for substring searches, and makes a log entry
    else:
            result = '[Undefined input type] %s' %(input_string)
            output(result, 4)
            return result

이 코드를 처리하는 사용자를 삭제하는 기록부터 사용자 데이터베이스에 관심이 있어요 어떻게 만들 것 4 번째와 5 번째 라인을 작동 및 정지의 나머지는 기능이 실행되:

def deleteUser(self):
self.__user = getInput('Enter the username you want to delete records for: ', 1)
if self.__user == 'QUIT0x0':
    #Quit code goes here
else:
    self.__userList = []
    self.__curs.execute('SELECT id FROM users WHERE username="%s"' %(self.__user))

사전에 감사합니다, 톰

도움이 되었습니까?

해결책

종료"기능"이라고 return:

def deleteUser(self):
  self.__user = getInput('Enter the username you want to delete records for: ', 1)
  if self.__user == 'QUIT0x0':
    return
  else:
    # ...

하지만 당신은 이미 사용 if/else, 이, else 점 안 실행되는 어쨌든,그래서 반환이 불필요한.당신은 단지뿐만 아니라어 pass 에 있:

def deleteUser(self):
  self.__user = getInput('Enter the username you want to delete records for: ', 1)
  if self.__user == 'QUIT0x0':
    pass
  else:
    # ...

또는 다음과 같은 명령을 사용합니다.

def deleteUser(self):
  self.__user = getInput('Enter the username you want to delete records for: ', 1)
  if self.__user != 'QUIT0x0':
    # ...

또한 사용 조기 반환:

def deleteUser(self):
  self.__user = getInput('Enter the username you want to delete records for: ', 1)
  if self.__user == 'QUIT0x0':
    return
  # ...
라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top