별 목록
Coddy Pygame 여정의 게임 창에서 배우는 Python 섹션에 포함된 레슨. 32개 중 24번째.
리스트는 대괄호 안에 여러 값을 순서대로 하나의 변수에 담습니다:
stars = [(100, 80), (220, 160), (360, 100)]여기서 각 항목은 위치 튜플입니다. stars[0]은 첫 번째 항목인 (100, 80)이고, stars[1]은 두 번째 항목입니다. range와 마찬가지로 0부터 셉니다.
for 루프를 사용하면 리스트의 항목을 하나씩 살펴볼 수 있습니다. 루프 변수는 차례대로 각 항목을 받습니다:
for star in stars:
pygame.draw.circle(screen, (255, 255, 255), star, 5)위치는 튜플이므로, star를 중심 위치에 바로 사용할 수 있습니다. 리스트에 위치를 추가하면 루프를 바꾸지 않아도 별이 하나 더 나타납니다. 리스트는 화면에 무엇이 있는지 기억하는 게임의 기억 장치이며, 루프는 리스트에 담긴 항목을 모두 그립니다.
챌린지
쉬움목록을 사용해 별 다섯 개가 있는 하늘을 그리세요:
(360, 100),(480, 200)및(580, 70)을stars의 끝에 추가하세요.stars[0]을 그리는 줄을for star in stars:로 바꾸고, 각 별을 반지름이 5인 흰색(255, 255, 255)원으로 그리세요.
직접 해보기
import pygame
pygame.init()
screen = pygame.display.set_mode((640, 480))
pygame.display.set_caption("Night Sky")
clock = pygame.time.Clock()
# 게임 루프가 시작되기 전에 여기서 필요한 것을 설정하세요.
stars = [(100, 80), (220, 160)]
running = True
while running:
for event in pygame.event.get():
if event.type == pygame.QUIT:
running = False
# 프레임마다 여기서 필요한 것을 변경하세요.
screen.fill((20, 24, 48))
# 화면을 채운 후 여기서 그리세요.
pygame.draw.circle(screen, (255, 255, 255), stars[0], 5)
pygame.display.flip()
clock.tick(60)
pygame.quit()
게임 창에서 배우는 Python의 모든 레슨
직접 연습해 보세요: Pygame 플레이그라운드