以下是一个简单的Python贪吃蛇游戏的示例代码:\n\npython\nimport pygame\nimport random\n\n# 初始化游戏\npygame.init()\n\n# 定义颜色\nWHITE = (255, 255, 255)\nBLACK = (0, 0, 0)\nRED = (255, 0, 0)\nGREEN = (0, 255, 0)\nBLUE = (0, 0, 255)\n\n# 设置游戏窗口尺寸\nwindow_width = 800\nwindow_height = 600\nwindow_size = (window_width, window_height)\ngame_window = pygame.display.set_mode(window_size)\npygame.display.set_caption(&quot;贪吃蛇游戏&quot;)\n\n# 设置游戏时钟\nclock = pygame.time.Clock()\n\n# 定义贪吃蛇初始位置和速度\nsnake_block_size = 10\nsnake_speed = 15\nsnake_pos = [[100, 50], [90, 50], [80, 50]]\ndirection = &quot;RIGHT&quot;\n\n# 定义食物初始位置\nfood_pos = [random.randrange(1, (window_width//10)) * 10, random.randrange(1, (window_height//10)) * 10]\nfood_spawn = True\n\n# 游戏结束标志\ngame_over = False\n\n# 定义贪吃蛇移动函数\ndef move_snake(direction):\n if direction == &quot;UP&quot;:\n snake_head = [snake_pos[0][0], snake_pos[0][1]-10]\n elif direction == &quot;DOWN&quot;:\n snake_head = [snake_pos[0][0], snake_pos[0][1]+10]\n elif direction == &quot;LEFT&quot;:\n snake_head = [snake_pos[0][0]-10, snake_pos[0][1]]\n elif direction == &quot;RIGHT&quot;:\n snake_head = [snake_pos[0][0]+10, snake_pos[0][1]]\n snake_pos.insert(0, snake_head)\n if snake_pos[0][0] == food_pos[0] and snake_pos[0][1] == food_pos[1]:\n return 1\n else:\n snake_pos.pop()\n return 0\n\n# 游戏循环\nwhile not game_over:\n # 处理事件\n for event in pygame.event.get():\n if event.type == pygame.QUIT:\n game_over = True\n elif event.type == pygame.KEYDOWN:\n if event.key == pygame.K_UP:\n direction = &quot;UP&quot;\n elif event.key == pygame.K_DOWN:\n direction = &quot;DOWN&quot;\n elif event.key == pygame.K_LEFT:\n direction = &quot;LEFT&quot;\n elif event.key == pygame.K_RIGHT:\n direction = &quot;RIGHT&quot;\n\n # 移动贪吃蛇\n eat_food = move_snake(direction)\n\n # 生成新的食物\n if food_spawn:\n food_pos = [random.randrange(1, (window_width//10)) * 10, random.randrange(1, (window_height//10)) * 10]\n food_spawn = False\n\n # 绘制游戏窗口\n game_window.fill(BLACK)\n for pos in snake_pos:\n pygame.draw.rect(game_window, GREEN, pygame.Rect(pos[0], pos[1], snake_block_size, snake_block_size))\n pygame.draw.rect(game_window, RED, pygame.Rect(food_pos[0], food_pos[1], snake_block_size, snake_block_size))\n\n # 判断游戏是否结束\n if snake_pos[0][0] < 0 or snake_pos[0][0] >= window_width or snake_pos[0][1] < 0 or snake_pos[0][1] >= window_height:\n game_over = True\n for block in snake_pos[1:]:\n if block[0] == snake_pos[0][0] and block[1] == snake_pos[0][1]:\n game_over = True\n\n # 更新游戏显示\n pygame.display.update()\n\n # 控制游戏速度\n clock.tick(snake_speed)\n\n# 退出游戏\npygame.quit()\n\n\n这是一个简单的贪吃蛇游戏,通过上下左右方向键控制贪吃蛇的移动方向,目标是吃掉随机生成的食物。游戏窗口大小为800x600像素,贪吃蛇的每个方块大小为10x10像素。贪吃蛇的移动速度为15帧每秒。游戏结束的条件是贪吃蛇撞到墙壁或者撞到自己的身体。\n\n希望这个示例代码可以帮助你了解如何使用Python编写一个简单的贪吃蛇游戏。如果你想进一步学习,可以参考pygame的官方文档,或者搜索其他贪吃蛇游戏的代码示例。

Python 贪吃蛇游戏:代码示例和教程

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

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