Python - for (반복문, Loops)

Language/Python 2016.08.11 01:26 posted by TechNote.kr


조건문과 더불어 가장 많이 쓰이는 문법으로 반복문이 있다. 반복문은 영어로 Loop, Loop의 의미를 찾아보면 다음과 같다.



 결국 반복문은 말 그대로 반복되는 문법이라는 뜻이다. (특정 조건일 때만 반복을 빠져나옴)


 Python에서는 여타 다른 언어들과 마찬가지로 2가지의 반복문을 제공하고 있다. 


for

while

for 문은 대체로 특정 횟수 만큼 반복해야할 경우 주로 사용되고, while 문은 특정 조건을 만족할 때 까지 반복해야할 경우 사용된다.


for 의 기본 문법


>>> for 변수 in 리스트 (혹은 튜플, 문자열, range(), ...)
...     실행문(Statements)
...



for 의 다양한 사용 방법



1) range(0,2) 의 수만큼 반복하며 출력한다. 

>>> for x in range(0,2):
...     print "In for loop : %d" % x
...
In for loop : 0
In for loop : 1



2) 중첩 반복문 (nested loops)


 아래의 예는 이중 loop로 x * y 번 loop를 실행하게 된다.

>>> for x in xrange(3):
...     for y in xrange(3):
...             print "%d * %d = %d" % (x, y, x*y)
...
0 * 0 = 0
0 * 1 = 0
0 * 2 = 0
1 * 0 = 0
1 * 1 = 1
1 * 2 = 2
2 * 0 = 0
2 * 1 = 2
2 * 2 = 4


3) 반복문 실행 중 중단 (Early exits)


 반복문이 모두 실행되지 않더라도 break를 통해 도중에 반복문을 중단할 수 있다. 

>>> for x in xrange(10):
...     print "In for loop : %d" % x
...     if x == 2:
...             break
...
In for loop : 0
In for loop : 1
In for loop : 2


4) for ... else 구문


 for 구문을 정상적으로 모두 마치게 되면 아래 예시와 같이 else 부분을 타게 된다.

>>> for x in xrange(3): ... print x ... else: ... print "x = %d" % x ... 0 1 2 x = 2

 반면 break 와 같이 도중에 for문을 빠져나오게 되면 else 구문은 타지 않는다.

>>> for x in xrange(3):
...     print x
...     if x == 1:
...             break
... else:
...     print "x = %d" % x
...
0
1


5) string 을 이용한 for 구문

>>> string = "Hello"
>>> for x in string:
...     print "character : %c" % x
...
character : H
character : e
character : l
character : l
character : o


6) list 를 이용한 for 구문

>>> lists = ["123", "234", "345"]
>>> for x in lists:
...     print x
...
123
234
345


7) tuple 을 이용한 for 구문


튜플을 이용했다는 점 외에 list 와 큰 차이는 없다.

>>> tuple = ("123", "234", "345")
>>> for x in tuple:
...     print x
...
123
234
345


저작자 표시 비영리 변경 금지
신고