오식랜드
[python] 조건문 본문
조건에 맞는 상황에만 메세지를 출력할 때에 if문을 사용합니다.
문법
if 조건식 :
실행할코드
조건식에는 true와 false로 구분될 수 있는 내용을 넣어줍니다
날씨로 예시를 들어보겠습니다.
weather = "비"
if weather == "비": # = 은 2번 써야 해요!!
print("우산을 챙기세요")
그리고 if문에서는 들여쓰기가 굉장히 중요합니다!
예를 들어
if 만약 초코파이가 있으면:
초코파이를 사와
오예스를 사와
이렇게 하면 초코파이가 있을 땐 초코파이+오예스를, 없을 땐 오예스만 사게 됩니다. 반면에
if 만약 초코파이가 있으면:
초코파이를 사와
오예스를 사와
이렇게 하면 초코파이가 있을 때만 초코파이+오예스를 사게 되며, 없을 땐 아무것도 사지 않게 됩니다.
elif문
조건을 2개 이상 걸고싶을 때 사용하게 됩니다.
weather = "미세먼지"
if weather == "비":
print("우산을 챙기세요") # 1번
elif weather == "미세먼지":
print("마스크를 챙기세요") # 2번
이 코드는 weather 가 "비"일 때는 1번 문장이, "미세먼지"일 때는 2번 문장이 출력되며, 둘 다 아닐 때는 아무 문장도 출력되지 않게 됩니다.
이 때 if 는 처음 딱 1번만 사용할 수 있지만 elif 는 필요한 만큼 여러 번 사용할 수 있습니다.
else문
어떤 조건에도 해당하지 않을 때 실행하게 됩니다.
weather = "맑아요"
if weather == "비":
print("우산을 챙기세요")
elif weather == "미세먼지":
print("마스크를 챙기세요")
else:
print("준비물 필요 없어요")
input()
이번에는 프로그램을 조금 더 생동감 있게 하기 위해 input() 을 사용해보겠습니다.
input() 은 프로그램 실행 시점에 사용자로부터 어떤 값을 입력받는 용도로 사용합니다.
사용자가 값을 입력하고 엔터를 치면 그 값은 항상 "문자열" 형태로 변수에 저장이 됩니다.
*이 때 만약 숫자 3을 입력해도 문자열 "3"으로 인식한다는 점을 주의해주세요.
weather = input("오늘 날씨는 어때요? ")
print(weather) # 사용자가 입력한 값 출력
if weather == "비":
print("우산을 챙기세요")
elif weather == "미세먼지":
print("마스크를 챙기세요")
else:
print("준비물 필요 없어요")
조건식에는 ==나 !=도 가능하고 and나 or연산자도 사용할 수 있습니다
우산은 비 말고도 눈이 올때도 사용할 수 있으니 추가해줍시다
weather = input("오늘 날씨는 어때요? ")
print(weather) # 사용자가 입력한 값 출력
if weather == "비" or weather == "눈":
print("우산을 챙기세요")
elif weather == "미세먼지":
print("마스크를 챙기세요")
else:
print("준비물 필요 없어요")
이번엔 온도를 받는 input을 만들어봅시다.
input은 문자열로만 받는데, 기온은 숫자로 받고 싶으니 int를 사용해서 정수형으로 변환해줍니다.
temp = int(input("기온은 어때요? "))
그리고 temp 변수의 값에 따른 동작을 정의해줍시다
if 30 <= temp: # 30 도 이상이면
print("너무 더워요. 나가지 마세요")
elif 10 <= temp and temp < 30: # 10도 이상 30도 미만이면
print("괜찮은 날씨에요")
elif 0 <= temp and temp < 10: # 0도 이상 10도 미만이면
# 위 비교 문장은 이렇게도 작성 가능합니다.
# elif 0 <= temp < 10:
print("외투를 챙기세요")
else: # 그 외의 모든 경우 (0도 미만이면)
print("너무 추워요. 나가지 마세요")
'dev-log > python' 카테고리의 다른 글
[python] 반복문 while문 (0) | 2023.01.04 |
---|---|
[python] 반복문 for문 (0) | 2023.01.04 |
[python] list와 set 데이터타입 변경 (0) | 2023.01.04 |
[python] 집합 set (0) | 2023.01.04 |
[python] 사전 Dictionary (0) | 2023.01.04 |