Menu
CoddyTech

True 또는 False

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

True와 False는 각각 독립된 값이며, 불리언이라고 합니다. 스위치처럼 변수에 이 중 하나를 담을 수 있습니다.

lamp_on = False

if는 값을 직접 검사할 수 있습니다. if lamp_on:은 해당 값이 True일 때 실행됩니다. not은 값을 뒤집으므로, lamp_on = not lamp_on은 램프를 켜고 끕니다.

스위치에는 키를 누르고 있는 것이 아니라 키를 누르는 동작이 필요합니다. get_pressed()는 키를 누르고 있는 모든 프레임에서 True이므로, 램프가 초당 60번 전환될 수 있습니다. 키를 누르면 게임 루프 맨 위의 이벤트 루프에서 KEYDOWN 이벤트가 한 번 발생합니다.

for event in pygame.event.get():
    if event.type == pygame.QUIT:
        running = False
    if event.type == pygame.KEYDOWN and event.key == pygame.K_SPACE:
        lamp_on = not lamp_on

2장에서는 이벤트를 자세히 설명합니다. 지금은 event.type은 무슨 일이 일어났는지를 나타내고, event.key는 어떤 키인지 나타낸다는 점만 알아두세요.

challenge icon

챌린지

중급

Space 키를 눌러 램프를 전환하세요:

  1. 설정 부분에서 lamp_on = False로 설정하세요.
  2. 이벤트 루프에서 K_SPACE에 대한 KEYDOWN 이벤트가 발생하면 lamp_on = not lamp_on으로 설정하세요.
  3. (320, 290) 위치에 반지름이 30인 빛을 그리세요. lamp_on이 True이면 (255, 220, 100)을, 그렇지 않으면 (70, 70, 90)을 사용하세요.

직접 해보기

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))
    # 화면을 채운 후 여기서 그리세요.
    pygame.draw.rect(screen, (90, 90, 110), (310, 300, 20, 180))
    pygame.draw.circle(screen, (70, 70, 90), (320, 290), 30)

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

pygame.quit()
quiz icon실력 점검

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

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

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