◎ Python/알게된 것 정리

[미립자 팁] 틀린 값을 입력받으면 맞을 때까지 반복할 때 방법

Reo 2023. 12. 12. 20:31
반응형

반복을 재귀적으로 바꾸기

처음에는 While문을 쓰고, 맞는 값을 입력받은 구간에 break를 쓰는 방법을 생각했다.

while True:
    try:
        text = input("Enter a word: ")
        res = [dict_df[i] for i in text.upper()]
    except KeyError:
        print("Sorry, only letters in the alphabet please.")
    else:
        print(res)
        break

 

 

공부하던 중, 아래 방법이 훨씬 좋다는 것을 배워서 기록해본다.

해당 구간을 함수로 돌린 후, except 부분에 해당 함수를 넣어 재귀적으로 구현했다.

def generate():
    try:
        text = input("Enter a word: ")
        res = [dict_df[i] for i in text.upper()]
    except KeyError:
        print("Sorry, only letters in the alphabet please.")
        generate()
    else:
        print(res)

generate()
반응형