for 반복문
A. for 반복자/코드 in 반복할 수 있는 것(문자열, 리스트, 딕셔너리, 범위 etc)
#리스트를 선언합니다.
list_a = [273, 32, 103, 57, 52]
#리스트에 반복문을 적용합니다.
for item in list_a:
#출력합니다
print(item)
① list_a에 있는(in) 요소들이 하나하나 item으로 입력 (for 반복문이니까 하나하나 모두)
② print(item)이 있으니 for문의 item에 입력된 요소가 하나씩 출력됨
③ 반복 > print 가 끝나면 for문으로 다시가서 list_a의 요소가 item으로 되고 또 출력하고..
for char in "안녕하세요":
print("-", char)
▶ 요소 하나하나씩 차례차례 출력됨.
B. 중첩 반복문 : 반복문을 여러 겹 사용하는
b-1. 1차원 리스트 : 한 겹으로 감싸진 리스트 ex. [1,2,3]
b-2. 2차원 리스트 : 두 겹으로 감싸진 리스트 ex. [[1,2,3], [4,5,6]]
b-3. n차원 리스트 : 그 외에도 n겹으로 여러번 중첩 가능
list_two = [
[1,2,3],
[4,5,6,7],
[8,9]
]
for ite in list_two:
print(ite)
list_two = [
[1,2,3],
[4,5,6,7],
[8,9]
]
for ite in list_two:
for item in ite:
print(item)
print(ite)
▶ 2차원 리스트에 반복문 2번 이용하기
[1,2,3] > 1요소 / [4,5,6,7] > 2요소 / [8,9] > 3요소
요소 전체(list_two)에서 하나하나 ite 불러옴
그 불러온 ite([1,2,3], [4,5,6,7], [8,9])에서
하나하나 item에서 불러옴.
큰 요소([1,2,3])에서 작은요소([1] [2] [3])로 하나하나씩 부르고
끝나면 다시 위로 반복 X 끝날때까지 반복
C. *리스트 => 리스트[0], 리스트[1], .... / 전개연산자
리스트의 요소들을 다 나열해준거
c-1. 리스트 내부에서 사용할 때 : 비파괴적으로 리스트에 요소를 추가할 수 있음.
#append() 함수를 사용할때
a = [1,2,3,4]
a.append(5)
print(a)
print()
#전개 연산자를 사용한 경우
b = [1,2,3,4]
c = [*b, 5]
print(b)
print(c)
c-2. 함수 매개변수 위치에 사용하는 경우 : 리스트 요소 하나하나 입력하는 것처럼 전개됨
▶ *a 만 사용하지 않도록 조심. 이유는 뒤의 매개변수와 retrun을 정리할때..☆
▶ examples
▷ 시험성적
point = [92, 38, 72, 48, 86]
for p_ass in point:
if p_ass >= 60:
print(p_ass, "점은 Pass")
else:
print(p_ass, "점은 False")

#p214 문제 2번
print("문제 2번 입니다-----")
numbers = [273, 103, 5, 32, 65, 9, 72, 800, 99]
for number in numbers:
if number > 100:
print("-100 이상의 수:", number)
#p214 문제 3번
print()
print("문제 3번 입니다-----")
numbers = [273, 103, 5, 32, 65, 9, 72, 800, 99]
#문제3번 왼쪽 실행결과 코드
for number in numbers:
if number // 2 == 0: #조건문 : 2로 나눈 후 나머지가 0일 경우
print(number, "는 짝수입니다.")
else :
print(number, "는 홀수입니다.")
#문제3번 오른쪽 실행결과 코드
for number in numbers:
if number >= 100 :
print(number,"는 3 자릿수입니다.")
elif 100 > number >=10 :
print(number,"는 2 자릿수입니다.")
else:
print(number,"는 1 자릿수입니다.")
#p.215 문제 4번
numbers = [1,2,3,4,5,6,7,8,9]
output = [[], [], []]
for number in numbers:
output[(number+2) %3].append(number)
print(output)
#p.215 문제 5번
num = [1,2,3,4,5,6,7,8,9]
for i in range(0, len(num) //2):
#j가 1,3,5,7이 나오려면
#어떤 식을 사용해야 할까요?
j = (i*2) +1
print(f"i = {i}, j = {j}")
num[j] = num[j] **2
print(num)