본문 바로가기
파이썬

파이썬 특정 사용자 입력까지 반복

by º기록 2020. 9. 26.
반응형

다음과 같이 숫자 추측 프로그램을 작성하려고합니다.

def oracle():
    n = ' '
    print 'Start number = 50'
    guess = 50 #Sets 50 as a starting number
    n = raw_input("\n\nTrue, False or Correct?: ")
    while True:
        if n == 'True':
            guess = guess + int(guess/5)
            print
            print 'What about',guess, '?'
            break
        elif n == 'False':
            guess = guess - int(guess/5)
            print
            print 'What about',guess, '?'
            break
        elif n == 'Correct':
            print 'Success!, your number is approximately equal to:', guess

oracle()

내가 지금 시도하고있는 것은 사용자가 '정답'을 입력 할 때까지, 즉 프로그램에 명시된 숫자가 사용자 수와 거의 같을 때까지 반복되는 if / elif / else 명령의 시퀀스를 얻는 것입니다. 사용자 수와 if 문을 어떻게 구현할 수 있는지 생각할 수 없으며 'while'을 사용하려는 시도도 작동하지 않습니다.

 

해결 방법

 

@Mark Byers의 접근 방식의 대안으로 while True 를 사용할 수 있습니다.

guess = 50     # this should be outside the loop, I think
while True:    # infinite loop
    n = raw_input("\n\nTrue, False or Correct?: ")
    if n == "Correct":
        break  # stops the loop
    elif n == "True":
        # etc.

 

참조 페이지 https://stackoverflow.com/questions/8114355

 

 

반응형

댓글