파이썬의 반복문에 대해 알아보겠습니다. 이 글은 책
점프 투 파이썬
을 토대로 작성됐습니다.
while문은 조건문이 참인 동안에 while문 아래의 문장이 반복되서 수행된다.
break 키워드는 반복문을 어떤 시점에서 종료하고 싶을 때 사용한다.
예를 들어 100점인 첫번째 학생만 찾아내면 된다면, 선생님은 모든 학생의 점수를 찾아볼 필요가 없다.
score_list = [10,50,70,90,100,60,40,80]
number = 0
for score in score_list:
number += 1
if score == 100:
print("100점이 나왔습니다! 다 나가세요!")
break
continue 키워드는 반복문을 어떤 시점에서 처음으로 돌아가게 하고 싶을 때 사용한다.
for score in score_list:
number += 1
if score < 60 :continue
print(f"{number}번 학생 축하드립니다.{score}점으로 합격입니다!")
"""
3번 학생 축하드립니다.70점으로 합격입니다!
4번 학생 축하드립니다.90점으로 합격입니다!
5번 학생 축하드립니다.100점으로 합격입니다!
6번 학생 축하드립니다.60점으로 합격입니다!
8번 학생 축하드립니다.80점으로 합격입니다!
"""
break과 continue 키워드는 for문에서도 마찬가지로 쓸 수 있다.
for문은 기본적으로 리스트, 튜플, 문자열 혹은 딕셔너리의 첫번째 요소부터 마지막 요소까지 차례대로 변수에 할당하여 반복된다.
for 변수 in 리스트(혹은 튜플, 문자열):
코드
리스트에서 리스트로 값을 할당하는 개념을 for문에서도 쓸 수 있다.
요솟값이 리스트, 튜플, 문자열 중의 하나라면 , 리스트나 튜플의 요솟값으로 할당할 수 있다.
a = [[1,2],[3,4],[5,6]]
for [first,second] in a:
print(first + second)
a = [(1,2),(3,4),(5,6)]
for (first,second) in a:
print(first + second)
a = ["ab","cd","ef"]
for [first,second] in a:
print(first + second)
"""
3
7
11
3
7
11
ab
cd
ef
"""
for문은 숫자 리스트를 자동으로 만들어주는 range
함수와 같이 사용되는 경우가 많다.
그리고 for문에 range객체가 들어가면 list
함수를 쓸 필요 없이 배열로 취급한다.
for item in range(10):
print(item)
my_list = [1,2,3,4]
trippled_list = [num * 3 for num in my_list]
print(trippled_list)
dictionary를 사용한 for
반복구문에서는 각 요소의 key
만 return
합니다. 그리고 해당 key
를 가지고 값을 읽어들이는 구조 입니다.
혹은 values
함수를 이용해서 값들만 list로 만든 뒤, for문으로 순회하는 방법이 있다.