시작, 끝, 간격
Coddy Pygame 여정의 게임 창에서 배우는 Python 섹션에 포함된 레슨. 32개 중 16번째.
range는 최대 세 개의 숫자를 받습니다: range(start, stop, step).
range(5): 0, 1, 2, 3, 4range(2, 6): 2, 3, 4, 5range(60, 200, 40): 60, 100, 140, 180
시작값에서 시작해 매번 단계값을 더하고, 종료값에 도달하기 전에 멈춥니다. 종료값 자체는 범위에 포함되지 않습니다.
시작값과 단계값을 지정하면 합계를 계산할 필요 없이 루프 변수를 위치 자체로 사용할 수 있습니다.
for x in range(60, 600, 40):
pygame.draw.circle(screen, (255, 160, 60), (x, 420), 8)행을 580에서 끝내려면 종료값은 그보다 커야 합니다. range(60, 580, 40)은 540에서 끝납니다. 단계값은 음수로 지정해 거꾸로 셀 수도 있습니다. range(10, 0, -2)는 10, 8, 6, 4, 2입니다.
챌린지
쉬움별이 빛나는 하늘 아래에서 for 루프 하나로 등불을 한 줄로 그려 보세요:
- y가
420인 위치에 반지름이 8인 주황색(255, 160, 60)원을 그립니다. - x를 60부터 580까지 40픽셀 간격으로 이동합니다. 등불은 14개입니다.
- 시작값, 끝값, 간격을 지정하여
range를 사용하고, 등불 하나만 그리는 코드를 바꾸세요.
직접 해보기
import pygame
pygame.init()
screen = pygame.display.set_mode((640, 480))
pygame.display.set_caption("Night Sky")
clock = pygame.time.Clock()
# 게임 루프가 시작되기 전에 여기서 필요한 것들을 설정하세요.
running = True
while running:
for event in pygame.event.get():
if event.type == pygame.QUIT:
running = False
# 프레임마다 여기서 필요한 것들을 변경하세요.
screen.fill((20, 24, 48))
# 화면을 채운 후 여기서 그림을 그리세요.
for i in range(8):
pygame.draw.circle(screen, (255, 255, 255), (40 + i * 80, 80), 5)
pygame.draw.circle(screen, (255, 160, 60), (60, 420), 8)
pygame.display.flip()
clock.tick(60)
pygame.quit()
게임 창에서 배우는 Python의 모든 레슨
직접 연습해 보세요: Pygame 플레이그라운드