개발 이야기/파이썬
파이썬에서 y, n 선택 입력을 물어보는 코드
AI 동키
2021. 5. 20. 18:14
반응형
파이썬에서 pip install 을 사용할때면 항상 파일을 찾은 후에 설치 하시겠습니까?(y/n) 라는 질문이 나온다.
내가 짜는 코드가 새로운 파일을 생성하거나 삭제 하는 어떤 행위를 한다면, 사용자에게 최종 확인을 받는게 좋을 것이다. 그 때, yes or no를 묻는 함수를 어떻게 짜는지 알아보겠다.
아래와 같이 함수명을 yes_or_no 로 정했다. question을 입력하면 입력창이 출력되고, y, n 입력에 따라 True, False를 Return하는 구조로 짜게 되었다.
def yes_or_no(question):
while "the answer is invalid":
reply = str(input(question+' (y/n): ')).lower().strip()
if reply[0] == 'y':
return True
if reply[0] == 'n':
return False
실행하게되면 다음과 같이 사용자 입력을 받게된다.
순순히 y를 입력하면,
y n이 아닌 문자를 입력하게 되면 아래와 같이 다시 되묻게 된다.
이게 while문을 쓴 이유이다.
이 함수를 사용하는 예시를 짜보자.
if yes_or_no("Do you want to continue?") == True:
print("Here we go")
else :
print("Nope")
yes_or_no 함수가 True이면 "Here we go"를 출력
그게 아니면 Nope을 출력하도록 짜보았다.
이처럼 함수의 결과를 다른 함수나 명령어로 연결시키면 되겠다.
같이 눈사람 만들래?
def yes_or_no(question):
while "the answer is invalid":
reply = str(input(question+' (y/n): ')).lower().strip()
if reply[0] == 'y':
return print("Let's do it!")
if reply[0] == 'n':
return print("Okey Bye~")
yes_or_no("Do yo wanna build snowman?")
사용자에게 y/n를 묻는 함수를 짜보았다.
이를 살짝만 응용한다면 내 코드에서 특정 액션을 취할 때 사용자의 최종 확인을 받을 수 있을 것이다.
반응형