어떤 작업을 반복적으로 실행할 경우 사용되며, while문과 for문으로 구분된다.
# 기본 문법
# while 조건(참인 경우만 반복실행):
# 반복 수행할 동작
a=0
while a<=10:
a=a+1
print(a)
len(Iterable)
# 기본 문법 1
# for i in range(시작 숫자, 끝 숫자+1):
# 반복 수행할 동작
for a in range(1, 11):
a=a+1
print(a)
# 기본 문법 2
# for e in elements: (배열)
# 반복 수행할 동작
array=[1,2,3,4,5,6,7,8,9,10]
for a in array:
a=a+1
print(a)
keys()
: key로 구성된 결과values()
: value로 구성된 결과items()
: (key, value)의 튜플로 구성된 결과# 딕셔너리 순회
grades={'jonh':80, 'dan':90, 'eric':100}
for student in grades.keys():
print(student)
for grade in grades.values():
print(grade)
for student, grade in grades.items():
print(student, grade)
enumerate()
: 인덱스와 객체를 쌍으로 담은 열거형 객체 반환enumerate(Iterable, [start=])
start를 지정 가능arr=['a','b','c','d']
for ind, a in enumerate(arr):
print(ind, a) # 0, 'a'
# 1, 'b'
# 2, 'c'
# 3, 'd'
# [code for 변수 in iterable]
# [code for 변수 in iterable if 조건식]
# 기존 리스트 생성 방법
cubic_list = []
for number in range(1,4):
cubic_list.append(number**3)
print(cubic_list)
# 리스트 컴프리헨션 이용
cubic_list= [number**3 for number in range(1,4)]
print(cubic_list)
# 훨씬 간결하게 작성 가능. 단 너무 남용 시 가독성이 떨어짐.
# 기존 딕셔너리 생성 방법
cubic_dict = {}
for number in range(1,4):
cubic_dict[number] = number**3
print(cubic_dict) # {1:1, 2:8, 3:27}
# 딕셔너리 컴프리헨션 이용
cubic_dict={number:number**3 for number in range(1,4)}
print(cubic_dict) # {1:1, 2:8, 3:27}
break
: 반복문을 종료continue
: continue 이후의 코드 블록은 수행하지 않고, 다음 반복을 수행for-else
: 끝까지 반복문을 실행한 이후에 else문 실행pass
: 아무것도 하지 않고 넘어감.