Programming/Python

파이썬 반복문 for / while

양디 2016. 3. 30. 12:11

파이썬 반복문

파이썬에도 역시 반복문이 존재하는데, for문과 while문이 존재한다.

다른 언어와 비슷하게 사용되지만, 몇가지 특징적인 부분들만 짚고 넘어가려고 한다.

조건문에서와 같이, 반복문 또한 들여쓰기(Indentation)을 통해서 반복문의 시작과 끝을 구분한다.


1
2
3
4
= 0
while i < 10 :
    print i
    i = i + 1
cs


위와 같은 방식으로 작동한다. while문은 반복문으로, i가 10보다 작은 경우에 반복문 안의 내용을 실행하겠다는 뜻이다.


이를 for문으로 바꿔보면 다음과 같다.


1
2
for i in range(10):
    print i
cs


눈여겨보아야 할 것은, range(10)이라는 것과, in이라는 키워드이다.


for i in range(10)은, 0부터 9까지의 숫자들을 하나씩 i에 집어 넣어가면서 반복문을 실행하겠다는 것이다.


따라서 위와 동일하게 0부터 9까지의 숫자를 출력하게 된다.


중요한 점은, range는 해당하는 숫자 - 1 까지만 실행된다는 것이고, 0부터 시작한다는 점이다.


자신이 원하는 range를 출력할 수도 있는데, 3에서 5까지 하고싶다면 range(3,6) 이라고 하는것도 가능하다.


또한 1씩 증가하는 것이 아니라, 다른 방식의 연산 또한 가능한데, 1씩 증가하는 것이 아니라 3씩 증가하게도 할 수 있다.


range(0, 10, 3) 이렇게 하면 리스트는 0, 3, 6, 9로 3씩 증가하는 연산을 하게 된다.


반복문을 중첩할 때에도 파이썬은 조심해야 할 것이, 들여쓰기를 항상 잘 살펴봐야 하는 것 !


range의 경우 List를 돌려주는데, list는 아무래도 다음 포스팅에 나올 듯 하다. (언제가 될지 모르겠다.)


이를 이용해서 for 문에서 list를 이용해서도 사용할 수 있는데 ,


1
2
for name in ['Adam','Bob','Eve']:
    print name
cs


[] 이것이 list의 역할을 하는데, name에 Adam, Bob, Eve를 넣어가면서 반복문을 실행하겠다는 뜻이다.


for문이 굉장히 직관적이며, 사용하기가 편해 보인다.


그러나 각각의 장단점이 있으므로, 둘 모두에 익숙해지는 것이 좋겠다.


오랜만에 포스팅을 하려니 매우 어색하다. 다시 블로그 신경 써야겠다.




댓글