오늘의 파이썬_[반복문] for, while, do~while

728x90
반응형

파이썬에도 for, while, do~while의 반복문이 있다. 하나씩 확인해보자.

 

1. for 문

 

아마 대부분의 개발자들이 for문을 가장 많이 사용할 것 같다. 간혹 while이나 do~while을 사용하기도 하지만 거의 본 적이 없는 것 같다. for문을 사용한다는 것은 어떤 순차적인 데이터를 활용하거나 어떤 값을 연속적, 규칙적으로 증가시키면서 반복하기 위해 사용한다. 파이썬의 for문은 이런 특징을 매우 잘 살린 것 같다. 

 

파이썬에서 for문은 기본적으로 list, tuple, 문자열과 함께 많이 사용된다. 

 

예를 하나 들어보면,

number = ['1', '2', '3', '4', '5']
for i in number :
    print(i)

number라는 list 하나를 만들고 숫자를 문자로 한 값(Ascii)을 넣어준다. 아랫줄의 for문을 보면 for 변수 in 리스트   이와 같은 구조로 되어있을 것이다. 실행시켜 보면 출력 결과는 아래와 같다. 

1
2
3
4
5

출력 결과로 알 수 있듯이 변수 i에 list  요소 값이 순차적으로 대입되고,  list의 길이만큼 for문을 반복하는 것을 확인할 수 있다. for에 list 대신 tuple를 사용해보자.

 

numberTuple = ('1', '2', '3', '4', '5')
for i in numberTuple :
    print(i)

출력 결과는 list를 사용했을 때와 동일하다. 

 

for문의 다른 활용방법은 range() 함수와 함께 사용하는 것이다. 아래 코드를 보자.

for i in range(10) : 
	print(i)

위 코드를 실행해보면 결과는 아래와 같다.

0
1
2
3
4
5
6
7
8
9

range() 함수는 전달 인자로 전달받은 값을 순차적으로 만들어내는 함수다. 위와 같이 10을 입력했으면 0부터 시작해서 10개의 숫자를 만들어낸다. 특정 범위의 숫자를 만들어내고 싶으면 숫자의 시작과 끝을 입력하면 된다. 

 

for i in range(2, 10) :
    print(i)

위와 같이 코드를 작성하면 숫자 2부터 10 이하까지의 숫자를 생성한다.

2
3
4
5
6
7
8
9

여기까지가 기본적인 for문의 사용방법이다.

 

2. while 문

파이썬에서 while문은 while 조건 : 이와 같이 구성된다. 아래 코드를 보자.

a = 0
while a < 10 :
    a+=1
    print(a)

변수 a를 0으로 초기화시키고 "조건"에 a < 10(a가 10보다 작으면)과 같은 조건을 넣어줬다. while문 아래서는 a를 1 씩 증가시키고 있다. a가 10이 되면 while 문 조건이 false가 되기 때문에 while문이 종료될 것이다. 결과는 아래와 같다!

 

1
2
3
4
5
6
7
8
9
10

 

3. do~while 문

결론부터 이야기하면 파이썬은 do~while문을 지원하지 않는다. 사실 do~while문은 for, while문으로도 충분히 구현이 가능하다. do~while문은 우선 loop를 먼저 수행하고 다음에 조건을 검사하는 방식으로 동작한다. 처음 한번 루프를 무조건 실행한다는 점 말고 for, while문과 차이점이 없다. 파이썬은 중복되는 기능들은 지원하지 않는 것 같다. 간결하고 좋다.

 

 

- 끝 -

 

728x90
반응형