주어진 조건을 판단하여 해당 조건이 참일 때와 거짓일 때에 맞는 명령문을 수행하는 것
▶ 기본 문법
if 조건문1 :
조건문1이 참일 때 실행할 문장1
조건문1이 참일 때 실행할 문장2
elif 조건문2 :
(조건문1이 거짓일 때 elif 블럭으로 이동)
조건문2가 참일 때 실행할 문장1
조건문2가 참일 때 실행할 문장2
조건문2가 참일 때 실행할 문장2
else :
조건문1, 조건문2가 모두 거짓일 때 실행할 문장1
조건문1, 조건문2가 모두 거짓일 때 실행할 문장2
=> elif, else는 상황에 따라 생략될 수 있다.
▶ 주의해야할 문법 :
조건식 : 결과가 True 또는 False로 해석될 수 있는 명령어로 구성
가장 기초적인 조건문
money = False
if money:
print("책을 삽니다")
print("집에 왔습니다.")
money = True
if money:
print("책을 삽니다")
print("집에 왔습니다.")
money = False
if money:
print("책을 삽니다")
else:
print("책을 사지 못했습니다")
print("집에 왔습니다.")
(예제)
논리 연산자를 사용한 조건
아래에 if문을 활용해서 돈이 6000원 이상이면
"백반을 먹습니다" 를 띄워주는 구문을 작성하세요
money = 7000
if money >= 6000:
print("백반을 먹습니다")
money = 1000 이니까
if money >= 6000: 는
if 1000 >=6000:는
if False:로 치환해서 생각한다
조건문이 길어질 때 이렇게 치환해서 생각하는게 도움이 된다
(예제2)
돈이 1000원 미만으로 있으면 "굶습니다"를 추가해주세요
if, elif를 쓰지 않고 추가해주세요
money = 100
if money >= 6000:
print("백반을 먹습니다")
elif money >= 1000:
print('컵라면을 먹습니다')
else:
print("굶습니다")
money = 5000
if not money > 7000:
print("컵라면을 먹습니다.")
else:
print("제육볶음을 먹습니다")
reward = ['상범', '상효', '상철']
if ('상효' in reward):
print("경품을 받습니다.")
미당참자는 "경품이 없습니다"라고 찍히도록 해주세요
if ('충재' in reward):
print("경품을 받습니다.")
else:
print("경품이 없습니다")
개수에 제한이 없다.
여러 개의 조건문이 존재할 경우 각각의 시작 조건은 별도로 작성하지 않아도 자동으로 생성된다.
If <조건문1>:
<수행할 문장1>
<수행할 문장2>
elif <조건문2>:
<수행할 문장1>
<수행할 문장2>
elif <조건문3>:
<수행할 문장1>
<수행할 문장2>
... (원하는 만큼 elif문 작성 가능)
else:
<수행할 문장1>
<수행할 문장2>
주어진 정수가 양수인지 음수인지 0인지 판별하는 조건문
만약 int를 변수로 지정한다면 어떤 문제가 생길까
잘 저장되고 출력되는 것 같아 보이지만
int = 1
print(int)
x = int(input('문자로 저장됩니다'))
print(x)
변수 int를 선언했기때문에
문자열을 정수형으로 바꿔주는 기존의 int가 기능을 잃어버려서
에러가 난다.
이런 경우 del로 삭제하면된다.
del int
x = int(input('문자로 저장됩니다'))
print(x)
(예제)
0과 음수를 판별할 수 있도록 코드를 완성시켜주세요.
integer = int(input('판별할 정수를 넣어주세요.'))
if(integer > 0):
print('양수입니다')
elif (integer == 0):
print('0입니다')
else:
print('음수입니다')