본문 바로가기
파이썬

파이썬 예 또는 아니요 출력 Python

by º기록 2021. 1. 11.
반응형
Join = input('Would you like to join me?')
if Join == 'yes' or 'Yes':
  print("Great," + myName + '!')
else:
  print ("Sorry for asking...")

그래서 이것은 내 코드입니다. 더 길다. 문제를 포함합니다. 나는 예 또는 아니오 질문을하고 있으며 콘솔에있을 때까지 원활하게 실행됩니다. 무엇을 입력하든 '예'가 출력됩니다. 누군가 도와 주시겠습니까? elif 문도 사용했지만 운이 없습니다.

 

해결 방법

 

if Join == 'yes' or 'Yes':

이것은 항상 사실입니다. Python은 다음과 같이 읽습니다.

if (Join == 'yes') or 'Yes':

비어 있지 않은 문자열 인 or 의 후반부는 항상 true이므로 또는 true가 true이기 때문에 전체 표현식이 항상 true입니다.

Join 을 두 값과 명시 적으로 비교하여이 문제를 해결할 수 있습니다.

if Join == 'yes' or Join == 'Yes':

그러나이 특별한 경우에이를 작성하는 가장 좋은 방법은 다음과 같습니다.

if Join.lower() == 'yes':

이렇게하면 사용자가 입력하는 대소 문자가 중요하지 않으며 소문자로 변환되고 소문자 값에 대해 테스트됩니다. Join 변수를 다른 곳에서 사용하려는 경우 대신 입력 할 때 소문자로 지정하는 것이 편리 할 수 ​​있습니다.

Join = input('Would you like to join me?').lower()
if Join == 'yes':   # etc.

사용자가 y 또는 실제로는 y 로 시작하는 모든 것을 입력 할 수 있도록 작성할 수도 있습니다.

Join = input('Would you like to join me?').lower()
if Join.startswith('y'):   # etc.

 

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

 

 

반응형

댓글