본문 바로가기
개인 공부/파이썬

[5일차] Do it! 첫 파이썬 :: 05. 코드의 반복 줄이기 - 반복문

by 잇포에듀 2020. 6. 3.
반응형

[Do it! 공부단 스터디 5일차]

Do it! 첫 파이썬 :: 05. 코드의 반복 줄이기 - 반복문

 

 

05. 코드의 반복 줄이기 ― 반복문

05-1. 반복되는 코드는 지루해!

  • 어떤 범위 안에서 특정 명령을 반복하는 구문을 반복문이라고 한다.
# 반복문을 사용하지 않고 코딩하기
print('*')
print('**')
print('***')
print('****')
print('*****')

# 반복문을 사용하여 코딩하기
for i in range(1, 6):
	print('*' * i)

05-2. 반복문의 기본 ― for 문

  • for 문의 반복 범위는 시퀀스로 표현한다.
  • for 뒤에 변수 이름을 정해서 쓴 뒤 in 키워드와 시퀀스 자료를 적으면 시퀀스 원소의 개수만큼 반복하겠다는 뜻이 된다.
# for 문의 기본형
for 변수 in 시퀀스:
	<반복할 명령>

 

  • for 문 작성할 때 주의할 점
    • for, 변수, in, 시퀀스 사이에는 띄어쓰기를 한 칸씩 할 것
    • in 키워드를 적은 뒤에 반복할 범위로 사용할 시퀀스를 적을 것
    • 시퀀스 뒤에는 잊지 말고 콜론(:)을 넣을 것
    • 명령을 적기 전에 [Enter]를 룰러 줄을 바꿀 것
    • [Tab]이나 [Spacebar]로 들여쓰기를 한 다음 반복 명령을 입력할 것
    • 명령이 여러개라면 이어서 [Enter]로 줄을 바꾸고 들여쓰기를 한 다음 명령을 입력할 것

 


05-3. 어려운 for 문 이해하기

# 복잡한 for 문 읽어보기

sum = 0

for i in [3, 6, 9]:
	sum = sum + i
  • sum이라는 변수에 초기 값으로 0을 대입한다.
  • for 문이 한 번 반복 될 때마다 3, 6, 9를 sum에 더한다.
  • 마지막 결과는 sum = 18이 된다


05-4. 뚝딱! 시퀀스 제조기 ― range() 함수

for i in [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20]:
	<기다린다>
  • 1 부터 20까지 반복을 하는 구문이다. 하지만 이 값이 200까지 커진다면?
  • 연속된 숫자로 이루어진 시퀀스 자료형을 만들어주는 range() 함수를 사용하자.
  • range()를 적은 다음 소괄호 안에 시작 인덱스 a와 종료 인덱스 b를 넣으면 그 구간만큼 시퀀스 자료형이 만들어진다. 주의할 점은 a부터 b-1까지의 시퀀스가 만들어진다는 것이다.
# range 함수로 시퀀스 만들기 예시

range(a, b)  # a에서 b-1까지 연속된 숫자로 이루어진 시퀀스 자료형
range(0, 9)  # 0, 1, 2, ..., 7, 8

range(a)  # 시작 인덱스 0이 생략된 형태, 0에서 a-1까지 연속된 숫자로 이루어진 시퀀스 자료형
range(5)  # range(0, 5)와 동일, 0, 1, 2, 3, 4

05-5. 반복문의 범위로 range() 함수 사용하기

  • 시퀀스를 반복문의 범위로 사용할 때 range() 함수는 두 가지의 의미로 사용할 수 있다.
# 반복할 범위을 알고 있다면? - 구간 반복

range(a, b)  # a부터 b-1의 구간 동안 반복


# 반복할 횟수를 알고 있다면? - 횟수 반복

range(a)  # a번 반복

 

구간으로 반복하기

# range() 구간으로 반복하기 기본형

for 변수 in range(a, b):  # 반복할 범위는 a부터 b-1까지 연속된 시퀀스
	<반복할 명령>
    
# 예시 (5에서 7까지 출력)
for i in range(5, 8):
	print(i)

 

 

횟수로 반복하기

# range() 횟수로 반복하기 기본형

for 변수 in range(a):  # a는 반복할 횟수
	<반복할 명령>
    
    
# 예시 (숫자 0에 1을 열 번 더하는 반복문)

count - 0
for i in range(10):
	count = count + 1
    # count에 1을 더하여 새로운 값을 count에 넣어요
    
 print(count)

 

 


05-6. 조건으로 반복하자 ― while 문

  • 특정 조건이 주어지고 이 조건이 참일 동안 명령을 반복할 대에는 while 문을 사용한다.
  • if 문은 조건이 참일 경우에 명령을 한 번만 실행하는 반면, while 문은 계속 반복해서 실행한다는 차이가 있다.
# while 문 만들기 기본형

while 조건:
	<반복할 명령>
    
    
# 예시 (3, 2, 1, 땡! 을 순서대로 출력)
i = 3
while i > 0:
	print(i)
    i = i - 1
print('땡!')

 

 


05-7. 반복문을 탈출하자 ― break 문

  • while 문의 조건이 항상 참이어서 코드가 무한정 실행되는 것을 무한루프라고 한다.
  • 조건이 참이든 거짓이든 관계없이 또는 반복할 범위와 상관없이 무조건 반복문에서 탈출 시켜주는 키워드가 바로 break 이다.
# break 예시
i = 0
while True:  # 무한루프 발생
	print('knock')
    if i >= 3:
    	break  # i가 3보다 크거나 같으면 반복문 탈출!
    i = i + 1

 

 

  • 파이썬으로 코딩할 때는 항상 들여쓰기를 조심해야 한다. break를 사용할때도 들여쓰기를 어떻게 하느냐에 따라 실행 결과가 달라질 수 있다.

 

단원 미션!

 

 

소감!

이전에도 다른 언어로 코딩을 해본 경험이 있기 때문에 반복문 자체를 익히는 것은 많이 어렵지 않았다. 그런데 계속 같은 부분을 실수한다. for, while, if 문의 뒤에 콜론(:) 넣는 것을 계속 깜박한다. 역시 익숙해지는 데에는 시간이 필요한 듯.

 

 

 

반응형

댓글