[python] Pygame을 사용하여 키보드와 마우스 입력 다루기

이 글에서는 Python의 Pygame 라이브러리를 사용하여 키보드와 마우스 입력을 다루는 방법에 대해 알아보겠습니다.

1. Pygame 라이브러리 설치

먼저, Pygame을 설치해야 합니다. 아래의 명령을 사용하여 Pygame을 설치할 수 있습니다.

pip install pygame

2. Pygame 초기화하기

Pygame을 사용하기 위해 해당 라이브러리를 초기화해야 합니다. 다음 코드를 사용하여 Pygame을 초기화할 수 있습니다.

import pygame

pygame.init()

3. 키보드 입력 처리하기

Pygame에서 키보드 입력을 처리하기 위해서는 이벤트 루프를 사용해야 합니다. 다음 코드는 키보드로부터 입력을 받고, 해당 입력을 처리하는 간단한 예시입니다.

import pygame

pygame.init()

window_width = 800
window_height = 600

window = pygame.display.set_mode((window_width, window_height))

running = True
while running:
    for event in pygame.event.get():
        if event.type == pygame.QUIT:
            running = False
        elif event.type == pygame.KEYDOWN:
            if event.key == pygame.K_ESCAPE:
                running = False
    
    # 여기에서 키보드 입력 처리 작성
    
    pygame.display.update()

pygame.quit()

위의 코드에서는 pygame.event.get() 함수를 사용하여 발생한 이벤트들을 가져옵니다. 이벤트 타입이 pygame.QUIT인 경우 창을 닫고, 이벤트 타입이 pygame.KEYDOWN인 경우 특정 키를 눌렀는지 확인합니다. 예를 들어, 위의 코드에서는 pygame.K_ESCAPE 키가 눌렸을 때 프로그램을 종료하도록 설정되어 있습니다.

여기에 키보드 입력을 처리하는 코드를 추가로 작성하여 원하는 동작을 구현할 수 있습니다.

4. 마우스 입력 처리하기

Pygame을 사용하여 마우스 입력을 처리하는 방법도 간단합니다. 다음 코드는 마우스 클릭 이벤트를 처리하는 예시입니다.

import pygame

pygame.init()

window_width = 800
window_height = 600

window = pygame.display.set_mode((window_width, window_height))

running = True
while running:
    for event in pygame.event.get():
        if event.type == pygame.QUIT:
            running = False
        elif event.type == pygame.MOUSEBUTTONDOWN:
            if event.button == 1:
                print("Left mouse button clicked")
            elif event.button == 2:
                print("Middle mouse button clicked")
            elif event.button == 3:
                print("Right mouse button clicked")
    
    # 여기에서 마우스 입력 처리 작성
    
    pygame.display.update()

pygame.quit()

위의 코드에서 pygame.MOUSEBUTTONDOWN 이벤트를 감지하여 마우스 버튼 클릭을 처리하고 있습니다. event.button 변수를 사용하여 어떤 마우스 버튼이 클릭되었는지 확인할 수 있습니다. 위의 예시에서는 각각 왼쪽, 중간, 오른쪽 마우스 버튼 클릭에 대해 간단한 메시지를 출력하도록 설정되어 있습니다.

마우스 입력을 처리하는 코드를 추가로 작성하여 원하는 동작을 구현할 수 있습니다.

5. 결론

이 글에서는 Python의 Pygame 라이브러리를 사용하여 키보드와 마우스 입력을 다루는 방법에 대해 알아보았습니다. Pygame을 사용하여 사용자의 입력을 처리하면 게임 개발이나 인터랙티브한 애플리케이션 개발에 유용하게 활용할 수 있습니다.

더 자세한 내용은 Pygame 공식 문서를 참고하시기 바랍니다.