用py写一串关于贪吃蛇的代码
时间: 2023-03-20 15:01:51 浏览: 190
以下是一个简单的贪吃蛇游戏的Python代码示例,使用了Pygame库实现游戏界面和动画效果。代码注释中包含了对各部分功能的说明,希望能对您有所帮助。
```python
import pygame
import random
# 初始化Pygame库
pygame.init()
# 定义游戏界面的尺寸
screen_width = 640
screen_height = 480
# 创建游戏界面对象
screen = pygame.display.set_mode((screen_width, screen_height))
# 设置游戏标题
pygame.display.set_caption('贪吃蛇')
# 定义游戏界面的背景颜色
bg_color = (255, 255, 255)
# 定义蛇的初始位置和大小
snake_x = screen_width // 2
snake_y = screen_height // 2
snake_size = 10
# 定义蛇移动的初始方向
snake_direction = 'right'
# 定义食物的初始位置和大小
food_x = random.randint(0, screen_width - snake_size)
food_y = random.randint(0, screen_height - snake_size)
food_size = 10
# 定义游戏循环标志
running = True
# 创建游戏循环
while running:
# 处理游戏事件
for event in pygame.event.get():
if event.type == pygame.QUIT:
running = False
# 填充游戏界面的背景颜色
screen.fill(bg_color)
# 根据蛇的方向移动蛇的位置
if snake_direction == 'right':
snake_x += snake_size
elif snake_direction == 'left':
snake_x -= snake_size
elif snake_direction == 'up':
snake_y -= snake_size
elif snake_direction == 'down':
snake_y += snake_size
# 判断蛇是否撞到墙壁
if snake_x < 0 or snake_x > screen_width - snake_size or snake_y < 0 or snake_y > screen_height - snake_size:
running = False
# 绘制蛇的位置
pygame.draw.rect(screen, (0, 255, 0), (snake_x, snake_y, snake_size, snake_size))
# 绘制食物的位置
pygame.draw.rect(screen, (255, 0, 0), (food_x, food_y, food_size, food_size))
# 判断蛇是否吃到食物
if snake_x == food_x and snake_y == food_y:
food_x = random.randint(0, screen_width - snake_size)
food_y = random.randint(0, screen_height - snake_size)
# 更新游戏界面
pygame.display.update()
# 控制游戏的帧率
pygame.time.Clock().tick(10)
# 退出游戏并关闭Pygame库
pygame.quit()
```
请注意,这只是一个简单的示例代码,如果您需要更完整、更复杂的贪吃蛇游戏,可能需要更多的代码和功能实现。
阅读全文