콘텐츠로 이동

Chunk b basics


📚 기본 개념 이해하기

🧩 객체(Object)란? (복습)

객체(Object)란?

  • 속성과 행동을 함께 가진 레고 블록 같은 단위입니다.
  • 변수는 속성을, 함수는 행동 설명서를 담고, 객체는 둘을 합친 형태입니다.
  • Ursina의 Entity는 model, color, scale 같은 속성과 animate_position() 같은 메서드를 가진 객체입니다.

코드를 배우기 전에, 먼저 중요한 개념들을 이해해봅시다!

반복문은 정말 유용한 도구예요! 회전목마처럼 돌면서 같은 일을 반복할 수 있어요! 🎠

반복문(For Loop)이란? 🔄

반복문은 같은 코드를 여러 번 실행하고 싶을 때 사용합니다!

마치 회전목마처럼 정해진 횟수만큼 돌면서 같은 일을 반복하는 것입니다! 🎠

🎠 회전목마 비유로 이해하기

반복문은 회전목마와 같아요!

  • 회전목마는 정해진 횟수만큼 돕니다 (예: 8바퀴)
  • 매 바퀴마다 같은 음악이 재생됩니다
  • 반복문도 정해진 횟수만큼 돌면서 같은 코드를 실행합니다!
# 회전목마가 3바퀴 도는 것처럼
for i in range(3):
    print("안녕!")  # 매 바퀴마다 "안녕!" 출력

왜 반복문을 사용하나요?

반복문이 없다면 같은 코드를 여러 번 복사해서 붙여넣어야 해요. 😓

# 반복문 없이 (비효율적) 방법
print("안녕!")
print("안녕!")
print("안녕!")

# 반복문 사용 (효율적) 방법
for i in range(3):
    print("안녕!")

반복문을 사용하면 코드가 훨씬 짧고 깔끔해집니다! ✨

range() 함수란? 🏭

range() 함수는 숫자 공장입니다! 🏭

숫자 공장에 "5개 만들어줘!"라고 주문하면, 0, 1, 2, 3, 4라는 숫자들을 만들어줍니다!

🏭 숫자 공장 비유

range() 함수는 마치 숫자를 찍어내는 공장과 같아요!

  • range(5) = "5개의 숫자를 만들어줘!" → 0, 1, 2, 3, 4를 생산! 🏭
  • range(8) = "8개의 숫자를 만들어줘!" → 0, 1, 2, 3, 4, 5, 6, 7을 생산! 🏭

공장에서 숫자를 찍어내듯이, range() 함수도 숫자들을 만들어줍니다!

코드 숫자 공장이 만드는 숫자들 반복 횟수
range(3) 0, 1, 2 3번 🔄
range(5) 0, 1, 2, 3, 4 5번 🔄
range(8) 0, 1, 2, 3, 4, 5, 6, 7 8번 🔄

왜 0부터 시작하나요?

프로그래밍에서는 보통 0부터 숫자를 세기 시작해요! 이것을 "0-based indexing"이라고 부릅니다.

range(3)  # 0, 1, 2 (총 3개)
range(5)  # 0, 1, 2, 3, 4 (총 5개)

리스트의 위치도 0부터 시작합니다.

my_list = ['a', 'b', 'c']
my_list[0]  # 'a' (첫 번째 항목)
my_list[1]  # 'b' (두 번째 항목)

변수 i란? 🧺

반복문에서 사용하는 변수 i현재 숫자를 담는 바구니입니다! 🧺

회전목마가 돌 때마다 바구니에 새로운 숫자가 들어갑니다!

🧺 바구니 비유

변수 i는 마치 숫자를 담는 바구니와 같아요!

  • 첫 번째 바퀴: 바구니에 0이 들어감 🧺 → i = 0
  • 두 번째 바퀴: 바구니에 1이 들어감 🧺 → i = 1
  • 세 번째 바퀴: 바구니에 2가 들어감 🧺 → i = 2

매 바퀴마다 바구니 안의 숫자가 바뀝니다!

카운터로도 생각해보기

i카운터라고도 생각할 수 있어요!

for i in range(3):
    print(f"현재 {i}번째 바퀴입니다!")
  • 1번째 바퀴: "현재 0번째 바퀴입니다!"
  • 2번째 바퀴: "현재 1번째 바퀴입니다!"
  • 3번째 바퀴: "현재 2번째 바퀴입니다!"

들여쓰기(Indent)의 중요성 🏠

파이썬에서는 들여쓰기가 매우 중요합니다!

들여쓰기는 반복문의 방입니다! 🏠

방 안에 있는 코드만 반복해서 실행됩니다!

🏠 반복문의 방 비유

반복문은 마치 집과 같아요!

for i in range(3):
    print(i)      # 🏠 방 안에 있는 코드 (반복됨)
    print(i * 2)  # 🏠 방 안에 있는 코드 (반복됨)

print("끝!")      # 🚪 방 밖에 있는 코드 (한 번만 실행)
  • 방 안 (들여쓰기 O): 반복해서 실행됩니다! 🔄
  • 방 밖 (들여쓰기 X): 한 번만 실행됩니다!

🚨 들여쓰기를 안 하면 오류가 발생합니다!

# 올바른 방법 ✅
for i in range(3):
    print(i)      # 🏠 방 안에 있어서 반복됨
    print(i * 2)  # 🏠 방 안에 있어서 반복됨

# 잘못된 방법 ❌
for i in range(3):
print(i)  # 🚪 방 밖에 있어서 오류 발생!

보통 4개의 스페이스 또는 1개의 탭을 사용해서 방을 만듭니다! 🏠