Python for 문 사용 방법 예제

파이썬 반복문인  for 문 사용 방법을 보겠습니다.

for 문을 응용해 else 또는 range 와도 같이 사용할 수 있습니다.

for

 

for 변수 in 오브젝트:

    실행 처리

 

for 문은 시퀀스 타입 오브젝트를 순서대로 변수에 대입하여, 데이터수만큼 반복 처리를 해줍니다.

예를 들어 문자열을 for문에 대입하면 문자열을 한 개 문자씩 변수에 대입하면서 반복 처리를 합니다.

리스트의 경우에는 리스트의 처음 요소부터 마지막 요소까지 순서대로 변수에 대입하면서 반복 처리를 합니다.

for문 작성에 주의 점으로는 if문처럼 들여 쓰기 단위로 블록을 지정하기 때문에 for문에 해당되는 처리는 들여 쓰기를 해줘야 합니다.

들여 쓰기는 스페이스 4번 또는 탭키로 가능합니다.

for num in [4, 3, 12]:
    print "num = " + str(num)
    print "End"

위 예제처럼 print “End”는 들여 쓰기를 하지 않았기 때문에 for문 처리에 해당되지 않습니다.

print “End”는 for문이 끝나고 한 번만 출력됩니다.

for문에 문자열을 지정한 경우입니다.

for str in "Hello":
    print str
    print "End"

문자 하나씩 str변수에 대입하여 출력하게 됩니다.

for문 반복 회수는 5번이 됩니다.

 

for ~ else

for문이 끝나고 실행하고 싶은 처리가 있는 경우 else를 사용하여 작성할 수 있습니다.

for 변수 in 오브젝트:

    실행 처리

else:

    실행 처리

 

else문을 작성한 경우에는 for문이 끝나고 else문 블록 내에 작성된 내용을 실행합니다.

else에 작성된 내용은 한 번만 실행됩니다.

for num in [4, 3, 12]:
    print "num = " + str(num)
else:
    print "End"

 

주의점으로는 for문에서 break를 사용하여 반복문이 끝나는 경우에는 else문은 실행되지 않습니다.

 

for ~ range

값의 길이만큼 반복이 아닌, 일정한 횟수만큼만 반복을 하고 싶은 경우에는 range함수를 사용하면 됩니다.

예를 들어 10번 처리를 반복하고 싶은 경우 range를 사용하지 않고 작성해보겠습니다.

for var in [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]:
    print var

 

만약 반복 회수가 더 많은 처리를 작성해야 한다면 리스트 값을 더 추가해줘야 합니다.

소스도 길어지고 보기도 힘들어집니다.

range를 사용해서 작성해보겠습니다.

for var in range(0, 10):
    print var

 

range함수는 지정한 시작 값부터 종료 값까지 순서대로 반복을 하도록 도와줍니다.

sum = 0
for num in range(1, 101):
    sum += num;

print "sum = " + str(sum)

댓글