Python贪吃蛇游戏:附完整代码及注释
使用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()
如何运行游戏:
- 确保你的电脑上安装了 Python 和 Pygame 库。 2. 将代码保存为
.py文件,例如snake_game.py。3. 在终端或命令行中使用python snake_game.py命令运行脚本。
现在你可以开始体验自己编写的贪吃蛇游戏了!
原文地址: https://www.cveoy.top/t/topic/62X 著作权归作者所有。请勿转载和采集!