반응형
파이썬에서 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를 묻는 함수를 짜보았다.
이를 살짝만 응용한다면 내 코드에서 특정 액션을 취할 때 사용자의 최종 확인을 받을 수 있을 것이다.
반응형
'개발 이야기 > 파이썬' 카테고리의 다른 글
[파이썬] Print 문 줄바꾸는 방법_줄바꿈 표현 정리 (0) | 2021.12.03 |
---|---|
[파이썬] pandas_datareader 오류 Unable to read URL 해결 방법! (1) | 2021.10.27 |
파이썬 오류_PDFInfoNotInstalledError: Unable to get page count. Is poppler installed and in PATH? 오류 (0) | 2021.05.18 |
[딥러닝 첫걸음] numpy의 where 함수 사용법 (0) | 2021.03.18 |
[파이썬] 파이썬 개발환경 구축 완료(?) (0) | 2020.02.25 |
댓글