[파이썬 기본 2] 조건문(If문/else문/elif문), 반복문(while문/for문)
인공지능 / 데이터 사이언스 통틀어서 파이썬은 공통으로 사용되는 툴(언어)이므로 파이썬 기본부터 차례로 연재를 하려고 한다.
<이전 글>
1. 조건문(If/else/elif 문)
파이썬의 조건문 사용시 아래 두 가지만 주의하면 된다.
① if/else/elif문 이후에 콜론(:)을 붙여줄 것
② if/else/elif문 하위에 들어가는 소스들은 모두 들여쓰기(Indentation) 할 것
1) If 문
설명 : If조건이 맞는 경우, 들여쓰기 된 문장 실행
아래 소스코드 예시를 보자.
#코드 2-9
a = 5
if a == 5:
print('Right!')
print('a is 5')
if a == 3:
print('Right!')
print('a is 3')
if a != 3:
print('Right!')
print('a is not 3')
<출력결과>
2) If/else 문
설명 : If조건이 맞는 경우, If문 안의 문장 실행. If조건이 틀린 경우, else 문 안의 문장 실행.
아래 소스코드 예시를 보자.
#코드 2-10
a = 5
if a == 5:
print('Right!')
print('a is 5')
else :
print('a is not 5')
a = 3
if a == 5:
print('Right!')
print('a is 5')
else :
print('a is not 5')
<출력결과>
3) If/elif 문
설명 : If조건이 맞는 경우, If문 안의 문장 실행. elif조건이 맞는 경우, elif문 안의 문장 실행.
elif, If조건이 틀린 경우, else 문 안의 문장 실행.
아래 소스코드 예시를 보자.
#코드 2-11
a = 5
if a < 5:
print('a is smaller than 5')
elif a > 5:
print('a is larger than 5')
else:
print('a is 5')
<출력결과>
2. 반복문 (While/For문)
while/for문 역시 If문과 마찬가지로 두 가지 요건을 따라야 한다.
① while/for문 이후에 콜론(:)을 붙여줄 것
② while/for문 하위에 들어가는 소스들은 모두 들여쓰기(Indentation) 할 것
1) while문
설명 : 조건이 참인 동안 반복 실행
아래 소스코드 예시를 보자.
#코드 2-12
a = 5
i = 1
#9번 반복하기
while i <= 9:
print(str(a) + ' X ' + str(i) + ' = ' + str(i*a))
i += 1
print('파이썬으로 구구단 5단을 계산할 수 있다!')
i가 9를 만나는 순간까지 while문 하위를 실행한다.
★ 주의 ★
여기서 print문을 주목해서 볼 필요가 있다.
str(a), str(i), str(i*a)는 각각 변수 a, 변수 i, i*a의 값(정수)를 문자열로 변환해서 출력하라는 의미이다.
한 print에 같은 자료형으로 출력하지 않으면 TypeError: unsupported operand type(s) for +: 'int' and 'str' 와 같은 에러를 띄운다.
<출력결과>
2) for문
설명 : 집합에서 하나씩 세서 하나도 남지 않을 때까지 반복 실행
아래 소스코드 예시를 보자.
#코드 2-13
a = 5
for i in range(1,10):
print(str(a) + ' X ' + str(i) + ' = ' + str(i*a))
print('while 조건문을 for 조건문으로 바꾸어 사용할 수 있다!')
i가 range(1,10) 즉 1부터 9까지 하나씩 증가시키면서 for문 하위를 실행한다.
<출력결과>
<실습문제> - 조건문과 반복문을 활용하여 음료 자판기 프로그램을 만들기
<소스코드>
while True:
print('음료목록 1.오렌지주스(100원), 2.커피(200원), 3.콜라(300원)')
coin = int(input('동전을 넣으세요.'))
drink = int(input('음료를 고르세요.\n'))
if drink == 1:
#오렌지주스 100원
if coin >= 100:
remain = coin - 100
print('오렌지주스가 곧 제공됩니다.')
print('거스름돈은 {}원입니다.'.format(remain))
else:
print('잔액이 부족합니다.')
elif drink == 2:
#커피 200원
if coin >= 200:
remain = coin - 200
print('커피가 곧 제공됩니다.')
print('거스름돈은 {}원입니다.'.format(remain))
else:
print('잔액이 부족합니다.')
elif drink == 3:
#콜라 300원
if coin >= 300:
remain = coin - 300
print('콜라가 곧 제공됩니다.')
print('거스름돈은 {}원입니다.'.format(remain))
else:
print('잔액이 부족합니다.')
elif drink == 3:
#콜라 300원
if coin >= 300:
remain = coin - 300
print('콜라가 곧 제공됩니다.')
print('거스름돈은 {}원입니다.'.format(remain))
else:
print('잔액이 부족합니다.')
else:
#없는 번호
print('없는 메뉴입니다. 다시 입력해주세요.')
coin = 0
<출력결과>
'IT > 머신러닝 & 인공지능 & 데이터사이언스' 카테고리의 다른 글
[파이썬 기본 4] 머신러닝 필수 라이브러리 :: 판다스 총정리 (0) | 2023.10.05 |
---|---|
[파이썬 기본 3] 머신러닝 필수 라이브러리 :: 넘파이 총정리 (1) | 2023.10.05 |
[파이썬 기본 1-2] 자료형(문자열/콜렉션), 함수 정의 (1) | 2023.10.05 |
[파이썬 기본 1-1] 초기 세팅 및 변수, 연산자, sep, input, 형변환, eval() (0) | 2023.09.25 |