使用Python打造你的贪吃蛇游戏:完整代码及注释

想要学习游戏开发?从经典的贪吃蛇游戏开始吧!这篇文章将带你使用 Python 和 Pygame 库创建一个简单的贪吃蛇游戏。不仅提供完整的代码,还附带详细的注释,帮助你理解每一步操作。

**代码:**pythonimport pygameimport random

初始化 Pygamepygame.init()

游戏窗口设置window_width = 400window_height = 400snake_size = 20snake_speed = 10

颜色定义white = (255, 255, 255)black = (0, 0, 0)red = (255, 0, 0)

创建游戏窗口window = pygame.display.set_mode((window_width, window_height))pygame.display.set_caption('贪吃蛇游戏')

蛇的初始状态snake_head = [200, 200] snake_body = [[200, 200], [190, 200], [180, 200]] direction = 'RIGHT'

食物初始位置food_position = [random.randrange(1, (window_width // snake_size)) * snake_size, random.randrange(1, (window_height // snake_size)) * snake_size]

分数score = 0

游戏结束标志game_over = False

定义移动函数def move_snake(direction): if direction == 'UP': snake_head[1] -= snake_size elif direction == 'DOWN': snake_head[1] += snake_size elif direction == 'LEFT': snake_head[0] -= snake_size elif direction == 'RIGHT': snake_head[0] += snake_size

游戏主循环while not game_over: for event in pygame.event.get(): # 退出游戏 if event.type == pygame.QUIT: game_over = True

    # 键盘控制方向        if event.type == pygame.KEYDOWN:            if event.key == pygame.K_UP and direction != 'DOWN':                direction = 'UP'            elif event.key == pygame.K_DOWN and direction != 'UP':                direction = 'DOWN'            elif event.key == pygame.K_LEFT and direction != 'RIGHT':                direction = 'LEFT'            elif event.key == pygame.K_RIGHT and direction != 'LEFT':                direction = 'RIGHT'

# 移动蛇头    move_snake(direction)

# 判断是否吃到食物    if snake_head == food_position:        score += 1        food_position = [random.randrange(1, (window_width // snake_size)) * snake_size,                         random.randrange(1, (window_height // snake_size)) * snake_size]    else:        snake_body.pop()

# 判断是否撞到边界或自身    if snake_head[0] < 0 or snake_head[0] >= window_width or snake_head[1] < 0 or snake_head[1] >= window_height or snake_head in snake_body:        game_over = True

# 更新蛇身    snake_body.insert(0, list(snake_head))

# 绘制游戏元素    window.fill(black)    for pos in snake_body:        pygame.draw.rect(window, white, pygame.Rect(pos[0], pos[1], snake_size, snake_size))    pygame.draw.rect(window, red, pygame.Rect(food_position[0], food_position[1], snake_size, snake_size))

# 显示分数    font = pygame.font.SysFont(None, 24)    text = font.render('Score: ' + str(score), True, white)    window.blit(text, (10, 10))

# 刷新画面    pygame.display.update()

# 控制游戏速度    pygame.time.Clock().tick(snake_speed)

退出游戏pygame.quit()

如何运行游戏:

  1. 确保你的电脑上安装了 Python 和 Pygame 库。 2. 将代码保存为 .py 文件,例如 snake_game.py。3. 在终端或命令行中使用 python snake_game.py 命令运行脚本。

现在你可以开始体验自己编写的贪吃蛇游戏了!

Python贪吃蛇游戏:附完整代码及注释

原文地址: https://www.cveoy.top/t/topic/62X 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录