프로그래밍에서는 주어진 조건을 판단한 후 그 상황에 맞게 처리해야 할 경우가 생긴다.
이렇듯 프로그래밍에서 조건을 판단하여 해당 조건에 맞는 상황을 수행하는 데 쓰는 것이 바로 if문이다.
기본 구조
if 조건문: (필수)
수행할 문장1
수행할 문장2
elif 조건문 : (선택)
수행할 문장1
수행할 문장2
else: (선택)
수행할 문장1
수행할 문장2
a = 1
if a==1:
print("정답")
else:
print("오답")
# 정답
a = True
if a: #(is True 생략)
print("a is True")
else:
print("a is False")
# a is True
이처럼 조건식은 다양한 경우에 활용할 수 있다.
조건식에 유용하게 활용 가능한 내용
활용 if문 예시
# 1
money = True
test =1
if (money==True) | (1 in [2,3]):
print("택시를 타고 가라")
else:
print("걸어 가라")
# 택시를 타고 가라
# 2
money = 2000
card = True
if (money >= 3000) | card:
print("택시를 타고 가라")
else:
print("걸어가라")
# 택시를 타고 가라
# 3
pocket = ['paper', 'cellphone']
card = False
if 'money' in pocket:
print("택시를 타고가라")
elif card:
print("택시를 타고가라")
else:
print("걸어가라")
# 걸어가라
for 문은 리스트와 같은 시퀀스(sequence)를 이용해서 원하는 명령을 반복할 때 사용한다.
기본 구조
for 변수 in 리스트(또는 튜플, 문자열):
수행할 문장1
수행할 문장2
test_lst = [1,2,3,4]
for i in test_lst:
print(i)
# 1
# 2
# 3
# 4
# 1
marks = [90, 25, 67, 45, 80]
number = 1
for mark in marks:
print('mark:',mark, ' / number:', number)
number = number +1
# mark: 90 / number: 1
# mark: 25 / number: 2
# mark: 67 / number: 3
# mark: 45 / number: 4
# mark: 80 / number: 5
# 2
marks = [90, 25, 67, 45]
number = 0
for mark in marks:
print('mark:',mark)
number = number +1
print('number:', number)
if mark >= 60:
print("%d번 학생은 합격입니다." % number)
else:
print("%d번 학생은 불합격입니다." % number)
# mark: 90
# number: 1
# 1번 학생은 합격입니다.
# mark: 25
# number: 2
# 2번 학생은 불합격입니다.
# mark: 67
# number: 3
# 3번 학생은 합격입니다.
# mark: 45
# number: 4
# 4번 학생은 불합격입니다.
# 3
add = 0
for i in range(1, 11):
add = add + i
# add += i
print(add)
# 55
# 4
for i in range(2,10): # ①번 for문
for j in range(1, 10): # ②번 for문
print(i*j, end=" ")
print('')
# 2 4 6 8 10 12 14 16 18
# 3 6 9 12 15 18 21 24 27
# 4 8 12 16 20 24 28 32 36
# 5 10 15 20 25 30 35 40 45
# 6 12 18 24 30 36 42 48 54
# 7 14 21 28 35 42 49 56 63
# 8 16 24 32 40 48 56 64 72
# 9 18 27 36 45 54 63 72 81
# 5
a = [1,2,3,4]
result = []
for num in a:
result.append(num*3)
print(result)
# [3, 6, 9, 12]
result_test = [num * 3 for num in a]
print(result_test)
# [3, 6, 9, 12]
# 6
result_test2 = [num * 3 for num in a if num % 2 == 0]
print(result_test2)
# [6, 12]
result_test = []
for num in a:
if num%2==0:
result_test.append(num*3)
print(result_test)
# [6, 12]
반복해서 문장을 수행해야 할 경우 while문을 사용한다.
기본 구조
while <조건문>:
<수행할 문장1>
<수행할 문장2>
<수행할 문장3>
num = 1
while num <= 100:
# print(num)
num = num + 1
print(num)
# 101
# 1
coffee = 10
money = 300
while money:
print("돈을 받았으니 커피를 줍니다.")
coffee = coffee -1
money = money+50
print("남은 커피의 양은 %d개입니다." % coffee)
if coffee == 0:
print("커피가 다 떨어졌습니다. 판매를 중지합니다.")
break
elif money >= 5000:
print('할당액끝')
break
# 돈을 받았으니 커피를 줍니다.
# 남은 커피의 양은 9개입니다.
# 돈을 받았으니 커피를 줍니다.
# 남은 커피의 양은 8개입니다.
# 돈을 받았으니 커피를 줍니다.
# 남은 커피의 양은 7개입니다.
# 돈을 받았으니 커피를 줍니다.
# 남은 커피의 양은 6개입니다.
# 돈을 받았으니 커피를 줍니다.
# 남은 커피의 양은 5개입니다.
# 돈을 받았으니 커피를 줍니다.
# 남은 커피의 양은 4개입니다.
# 돈을 받았으니 커피를 줍니다.
# 남은 커피의 양은 3개입니다.
# 돈을 받았으니 커피를 줍니다.
# 남은 커피의 양은 2개입니다.
# 돈을 받았으니 커피를 줍니다.
# 남은 커피의 양은 1개입니다.
# 돈을 받았으니 커피를 줍니다.
# 남은 커피의 양은 0개입니다.
# 커피가 다 떨어졌습니다. 판매를 중지합니다.