Programming/Python

[Python 3.7] 파이썬 반복문 for,while

Nirsa 2020. 1. 30. 15:09
반응형

 

  • 1. 반복문이란?

횟수 또는 조건에 따라서 그 결과가 만족될때까지 특정 코드를 반복해서 실행 시킵니다.

 

  • 2. for문

아래는 range를 사용하여 특정 횟수를 반복하며 print('Hello, World!')를 실행 시키는 코드 입니다.

for i in range(10):
    print('Hello, World!', i)

 

아래 그림과 같이 range(10)은 0부터 9이므로 맨 처음 숫자인 0을 꺼내서 i로 넣습니다. (변수로 활용 가능 합니다)

그 다음엔 1을 꺼내고 코드 실행, 다음엔 2를 꺼내고 코드 실행 ... 이런식으로 ragne(10)의 모든 숫자를 다 사용할 때 까지 반복 합니다. 이렇게 값을 차례대로 하나씩 꺼낼 수 있는 객체를 이터레이터(iterator) 라고 하는데, 만약 처음부터 공부 하시는 분이라면 당장 알아야 할 필요 없으니 이런것도 있구나 정도만 생각하셔도 좋습니다.

 

모든 값을 꺼낸 후에는 for문 다음 코드가 있다면 다음 코드를 실행하기 위해 넘어 갑니다. for문은 range뿐만이 아니라 다른 시퀀스 객체를 넣어서 사용 하셔도 됩니다. (문자열도 가능)

 

  • 3. while문

  while문은 조건식을 통해 반복 합니다.

아래 코드는 변수 i에 1을 할당하고 i가 20보다 작거나 같을때 (즉, 조건식이 참일 경우) 아래 코드를 수행 합니다. 대신 한번 코드가 실행될 때 마다 변수 i에 1을 더해서 숫자를 증가 시킵니다.

만약 i += 1이 없다면 i는 계속 1로 유지 되므로 조건식이 계속 참이게 됩니다. 즉 거짓은 절대 나올 수 없게 되고 이로써 무한 루프가 발생 합니다. (무한 루프는 끝이 없는 작업이 계속 진행되는걸 말합니다) 

i = 1

while i <= 20:
    print('Hello, World!', i)
    i += 1

 

while문은 반복 횟수가 정해지지 않았을 때 유용하게 사용 되는데, while문 안의 코드에서 랜덤한 값이 생성된다고 했을 때 특정 값이 나올때에만 while문을 종료하는 등에 쓰일 수 있습니다.

 

 

 

반응형