먼저 COLAB으로 다시 학습을 해보자고요.
혹시나 아빠가 COLAB의 초화면을 상기시켜줄게.
주소는
좌측하단에 파랑색 +새노트를 누르면 시작이 되요.
우리는 코딩을 할 예정이니까 +코드를 누르고 코드를 입력하고 동그라미속 삼각형을 누르면 실행이 되요. 만들어 놓은 코드전부 다를 다시 실행하고 싶으면 메뉴바 우측에 삼각형 모두실행을 누르면 되요.
아래에 보면 #기호가 많이 보이는데, 이 #표시는 #코드가 아니라 해설을 하는 것이다 라는 뜻입니다.
여러분이 선생님이고, 오늘 숙제를 제출한 학생 3명의 이름표가 바구니에 들어있다고 상상해 보세요.
["철수", "영희", "민준"]
선생님은 이 이름표를 하나씩 꺼내서 "참 잘했어요!" 도장을 찍어줘야 합니다.
만약 for loop 코딩을 모른다면?
# 음... 이렇게 해야 하나요? 한 명씩 수작업을 해야 해요.
print("철수, 참 잘했어요!")
print("영희, 참 잘했어요!")
print("민준, 참 잘했어요!")
학생이 3명일 땐 괜찮지만, 3000명이면 어떡하죠? ==> 3000번 수작업을 해야 해요???
마법 주문을 사용하면!
컴퓨터에게 이렇게 시킬 수 있습니다.
"여기 students라는 이름표 바구니가 있어. 거기서 이름표(
student)를 하나씩 꺼내서 '참 잘했어요!' 도장을 찍어줘.
바구니가 빌 때까지 전부 다!"
이걸 파이썬 코드로 쓰면 이렇습니다.
#1. 숙제 낸 학생들 목록(리스트)을 만듭니다.
students = ["철수", "영희", "민준"]
# 2. for 마법 주문을 외웁니다. # "students 목록 안에 있는 각 학생(student)에 대해서:"
for student in students:
# (꼭 4칸 들여 쓰기!) 아래 작업을 반복해라!
print(student + ", 참 잘했어요!")
결과는 어떻게 나올까요?
컴퓨터는
students
바구니에서 "철수"를 꺼내 student라는 임시 이름표를 붙이고, "철수, 참 잘했어요!"를 출력합니다. 그다음, "영희"를 꺼내 student에 넣고, "영희, 참 잘했어요!"를 출력합니다. 마지막, "민준"을 꺼내 student
에 넣고, "민준, 참 잘했어요!"를 출력합니다.
더 이상 꺼낼 이름표가 없으면?
for 루프는 깔끔하게 종료됩니다.
철수, 참 잘했어요!
영희, 참 잘했어요!
민준, 참 잘했어요!
아쉬우니까 하나만 더 해 볼까요?
이번엔 아빠가 마트에 가기 전에 쇼핑 리스트를 만들었어요.
for 루프는 이 리스트를 보고 물건을 하나씩 카트에 담는 로봇과 같습니다.
shopping_list = ["사과", "우유", "달걀", "빵"]
마법 주문!
"로봇아! 여기 shopping_list가 있어. 여기서 물건(item)을 하나씩 순서대로 꺼내서
카트에 담아줘!"
# 1. 쇼핑 리스트 준비
shopping_list = ["사과", "우유", "달걀", "빵"]
print("--- 장보기 시작! ---")
# 2. for 반복 시작! # "shopping_list 목록 안에 있는 각 물건(item)에 대해서:"
for item in shopping_list:
# 아래 작업을 반복해라!
# (꼭 4칸 들여 쓰기!) print(item + "을(를) 카트에 담았습니다.")
print("--- 장보기 완료! ---")
실제로 COLAB을 돌려본 이미지는 다음과 같습니다.
예상 결과:
--- 장보기 시작! ---
사과를(를) 카트에 담았습니다.
우유를(를) 카트에 담았습니다.
달걀을(를) 카트에 담았습니다.
빵을(를) 카트에 담았습니다.
--- 장보기 완료! ---