Python is an amazing language for beginners, and it's great for making games too! In this guide, we'll create a simple game using Python and a library called Pygame.
Setting Up
First, make sure you have Python installed on your computer. Then, install Pygame by opening your command prompt or terminal and typing: pip install pygame
Creating Your Game Window
Let's start by creating a window for our game. Type this code into a new Python file:
import pygame
pygame.init()
# Set up the game window
window = pygame.display.set_mode((800, 600))
pygame.display.set_caption("My First Game")
# Game loop
running = True
while running:
for event in pygame.event.get():
if event.type == pygame.QUIT:
running = False
# Fill the background
window.fill((0, 0, 255))
# Update the display
pygame.display.update()
pygame.quit()
When you run this code, you'll see a blue window appear! This is the start of your game.
Adding a Player Character
Now let's add a character that we can control. Add this inside your game loop:
# Player position
player_x = 400
player_y = 300
# Game loop
running = True
while running:
for event in pygame.event.get():
if event.type == pygame.QUIT:
running = False
# Get key presses
keys = pygame.key.get_pressed()
if keys[pygame.K_LEFT]:
player_x -= 1
if keys[pygame.K_RIGHT]:
player_x += 1
if keys[pygame.K_UP]:
player_y -= 1
if keys[pygame.K_DOWN]:
player_y += 1
# Fill the background
window.fill((0, 0, 255))
# Draw the player (a red square)
pygame.draw.rect(window, (255, 0, 0), (player_x, player_y, 50, 50))
# Update the display
pygame.display.update()
Now you can use the arrow keys to move a red square around the screen!
What Next?
From here, you can add more features to your game like:
- Obstacles to avoid
- Items to collect
- A scoring system
- Sound effects and music
- Better graphics
Congratulations on creating your first Python game! Keep experimenting and adding new features to make your game even more fun!
Related Posts
Want more tech content?
Join our newsletter for the latest tutorials, projects, and tech news for kids!