8. 반복문

Pywiki
Sam (토론 | 기여)님의 2022년 11월 25일 (금) 11:26 판
둘러보기로 가기 검색하러 가기


1 개요

명령을 일정 횟수만큼, 혹은 어떤 조건 안에서 반복수행하게끔.

1.1 형태

기본적으로 조건문의 형태와 동일하다.

형태 방법 사용 예시
while
while 조건:
    명령
반복횟수가 명확하지 않을 때.

조건에 따라 돌린다. 조건식이 True일 동안 반복한다.

while 0< x <=3:
    x-=1
for
for 변수 in 자료구조:
    명령
반복횟수가 명확할 때.

자료구조와 함께 사용할 때 쓴다.

자료구조의 요소를 반복하여 변수에 대입해 쓴다.

for x in (1,2,3):
    x-=1

2 while

형태 방법
기본형
while 0< x <=3:
    x-=1
else
while 0< x <=3:
    x -= 1
else:
    x += 1

3 for

형태 방법 비고
기본형
for 변수 in 자료구조:
    명령
자료구조 안에 또 자료구조가 있을 때
for 변수1, 변수2 in [[1,2],[3,4],[5,6]]
    명령
변수 갯수가 맞지 않는 경우엔 에러가 난다.
else
for 변수 in 자료구조:
    명령
else:
    명령

3.1 range

반복문은 range() 와 함께 많이 쓴다. 명령에 따라 리스트를 만들어주는 함수이다.(실제 데이터형은 range라는 데이터형으로, 리스트와 구분해서 쓰인다.)

의도 방법 예시 결과
기본형태 range(종료숫자)

range(시작숫자, 종료숫자, 증가량) range(시작숫자, 종료숫자)

1부터 9까지 range(1, 10, 1) #10을 만나면 종료해버린다.
range(10, 1, -1)
10부터 1까지 range(10, 0, -1)
range(10, 1, -1)

3.2 enumerate

의도 설명 예시
기본형태 for문을 돌리며 변수와 함께 수를 세주는 역할이 필요할 때.
for i, x in enumerate(['A', 'B', 'C']):
    # i는 0부터 순차적으로 올라가고,
    # x는 A부터 나온다.

3.3 zip

특정 데이터를 커플링하고 싶을 때 사용한다.

의도 설명 예시
두 리스트를 하나로 각각의 n번 원소를 하나의 튜플로 합쳐준다.
pairs = list(zip(list1, list2))

4 분기문

실행위치를 이동시키는 명령.

4.1 break

반복문 안에서 반복문을 깰 때 사용한다. 조건문 안에서 반복문을 깰 때 사용할 수 있다.

자기 바로 위의 반복문을 탈출한다.

4.2 continue

해당 반복은 수행하지 않고 다음 반복으로 건너뛴다. 다음 코드의 출력은 0, 1, 3, 4, 5 이다.

for i in range(6):
    if i == 2:
        continue
    print(i)

4.3 pass

있으나 마나한 기능이지만.. if나 for문 안에서 내용을 들여쓰기 하지 않으면 에러가 나는데, 내용을 나중에 채워넣기 위해 사용하는 구문. 다음과 같은 때에 사용한다.

if 1>x:
    pass  # 내용은 나중에 넣자.

def 함수명():
    pass  # 함수를 정의하긴 하는데, 내용은 나중에 넣자.

class 클래스명():
    pass  # 클래스를 정의하긴 하는데, 내용은 나중에 넣자.