Menu
CoddyTech

정수와 소수

Coddy Pygame 여정의 게임 창에서 배우는 Python 섹션에 포함된 레슨. 32개 중 9번째.

Python에는 두 가지 종류의 숫자가 있습니다. int는 정수입니다: 3, -40, 640. float에는 소수점이 있습니다: 0.5, 2.0, 107.25.

프레임마다 1픽셀씩 움직이면 초당 60픽셀입니다. 더 느리게 움직이려면 float를 더하세요:

moon_x = moon_x + 0.5

이제 moon_x는 100, 100.5, 101.0, 101.5가 됩니다. pygame은 정수 픽셀 위치에 그리므로 달은 두 프레임마다 1픽셀씩 움직입니다. 즉, 천천히 이동하여 초당 30픽셀 움직입니다.

int에 float를 더하면 float가 되며, float는 101.0처럼 항상 소수점을 표시합니다. int()는 소수점 뒤의 값을 버려 float를 int로 바꿉니다:

int(101.5)   # 101
challenge icon

챌린지

중급

달이 천천히 떠다니게 하세요:

  1. 변경 부분에서 매 프레임마다 moon_x에 0.5를 더하세요.
  2. 레이블을 정수로 표시하세요: f"Moon x: {int(moon_x)}".

직접 해보기

import pygame

pygame.init()
screen = pygame.display.set_mode((640, 480))
pygame.display.set_caption("Night Sky")
clock = pygame.time.Clock()

# 게임 루프 전에 여기서 필요한 것들을 설정하세요.
moon_x = 100
moon_y = 200
font = pygame.font.Font(None, 36)

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, (240, 230, 160), (moon_x, moon_y), 50)
    text = font.render(f"Moon x: {moon_x}", True, (230, 230, 240))
    screen.blit(text, (20, 20))

    pygame.display.flip()
    clock.tick(60)

pygame.quit()
quiz icon실력 점검

이 레슨에는 짧은 퀴즈가 포함되어 있습니다. 레슨을 시작해 문제를 풀고 진행 상황을 기록하세요.

게임 창에서 배우는 Python의 모든 레슨

직접 연습해 보세요: Pygame 플레이그라운드