Programming

; develop a program

Back-End/Python

[Python] 제어문 - 반복문(iteration statements)

Clloud_ 2022. 9. 22. 11:47
반응형

이번 포스팅에서는 파이썬의 3가지 제어문 중 하나인 반복문(iteration statements)에 대하여 공부를 해보고자 한다.

 


반복문(iteration statements)

반복문은 프로그램 내에서 똑같은 명령을 일정 횟수만큼 반복하여 수행하도록 제어해 주는 명령문을 의미한다. 

 

반복문은 특정 조건이 True인 동안 명령문을 반복해서 실행하는 while 문과 Iterable 한 객체가 값이 없을 때까지 반복 조회하는 for in으로 구분할 수 있다.

 

Iterable 한 객체란 반복 가능한 객체를 말하며 for in 문을 이용해 원소들을 조회할 수 있는 객체를 의미한다. 자료구조들, 문자열이 대표적인 Iterable 객체이다.

 


while 문

 

while 문은 파이썬에서 사용할 수 있는 가장 간단한 반복문이다. 

while 문은 조건식이 특정 조건을 만족(True)할 때까지속해서 주어진 명령문을 반복 실행한다.

 

while 문의 기본구조

조건식의 결과가 True 라면 while 문 block 내 명령문들이 실행되고, 만약 결과가 False 라면 while 문은 생략한다.  

 

while 문 block 내 명령문을 실행하고 나서 또다시 조건식이 True 인지 False 인지 확인한다.

명령문이 무한 반복하지 않기 위해서는 반복 구문에 조건을 False로 만드는 코드가 있어야 한다.

 

while 선언 마지막에 : 을 넣고 반복할 구문은 공백 4칸이나 tab을 입력 후 작성한다.

while 조건 :
    반복할 구문1
    반복할 구문2
    ....

 

예제

순서 1. input( ) 함수를 생성한다.

순서 2. 현재 몇 번째 반복인지 저장할 변수를 선언한다.

순서 3. whlie 문을 사용하여 조건문을 생성한다. 조건은 count < limit

순서 4. while 문 내부 명령문의 조건이 False가 될 때까지 실행한다.

더보기

count += 1 은 대입 연산자이다.

→ 조건이 False가 되기 전까지 count값이 1씩 증가한다. 시작 값은 0.

limit = int(input("반복할 횟수:"))
count = 0 
while count < limit:
    count += 1
    print(f'{count}. 안녕하세요')
    print('-' * 20)

 

[실행결과]

input( ) 함수의 입력한 숫자만큼 값이 반복되어 출력된다.

반복할 횟수:3
1. 안녕하세요
--------------------
2. 안녕하세요
--------------------
3. 안녕하세요
--------------------

 


for in 문

iterable 한 객체가 가지고 있는 값들을 반복문을 이용해서 조회할 때 사용하는 구문이다.

iterable 한 객체는 자료구조들, 문자열 등, 여러 개의 값들을 가지고 있으면서 하나씩 제공하는 기능을 가진 객체를 말하며 for in문과 연동이 가능하다.

 

for in 문의 기본 구조

for 선언 후 ' : '으로 선언부와 구현부를 나눈다.

변수는 반복할 때 조회되는 원소를 반복 구문에서 사용하도록 저장하는 임시 변수고, Iterable 안의 모든 값들을 다 조회하면 반복을 멈춘다.

 

반복 구문 block은 공백 4개 또는 tab을 입력 후 작성한다.
반복 구문 block이 끝나면 공백 없이 코드를 작성하면 된다.

for 변수 in Iterable :
    반복구문
    반복구문
    ....

 

예제 1

순서 1. 문자열을 생성한다.

순서 2. for in 문을 사용하여 변수와 객체를 선언한다.

순서 3. 모든 값들을 조회하고 출력한다.

s = "안녕하세요"
print(type(s))
for v in s:  # for 변수 in Iterable:
    print(v + "**")

 

[실행결과]

<class 'str'>
안**
녕**
하**
세**
요**

 

예제 2

순서 1. 리스트를 생성한다.

순서 2. for in 문을 사용하여 변수와 객체를 선언한다.

순서 3. 모든 값들을 조회하고 출력한다.

l = [10, 20, 30, 40, 50]
print(type(l))
for v in l:
    print(v * 2)

 

[실행결과]

<class 'list'>
20
40
60
80
100

 

예제 3

순서 1. 튜플을 생성한다.

순서 2. for in 문을 사용하여 변수와 객체를 선언한다.

순서 3. 모든 값들을 조회하고 출력한다.

t = 1, 2, 3, 4, 5, 6
print(type(t))
for v in t:
    print(v * 100)

 

[실행결과]

<class 'tuple'>
100
200
300
400
500
600

 

예제 4

순서 1. 생성한다.

순서 2. for in 문을 사용하여 변수와 객체를 선언한다.

순서 3. 모든 값들을 조회하고 출력한다.

d = {'A': 10, 'B': 20, 'C': 30}
print(type(d))
for v in d:
	print(v, d[v])

 

[실행결과]

<class 'dict'>
A 10
B 20
C 30

 


반응형