【Python系列】适用于初学者的基础代码,可用作毕业设计

 

编写一个完整的贪吃蛇游戏是一个相对复杂的任务,涉及多个方面,如游戏循环、用户输入、图形渲染等。在Python中,我们通常使用pygame库来创建这样的游戏。以下是一个简化版的贪吃蛇游戏代码,使用了pygame库。

确保你已经安装了pygame库。如果没有,你可以通过pip安装,在命令行或终端中执行以下命令:

pip install pygame

然后可以使用以下代码创建贪吃蛇游戏:

import pygame  
import sys  
import random  
  
# 初始化pygame  
pygame.init()  
  
# 设置屏幕大小  
screen_width, screen_height = 800, 600  
screen = pygame.display.set_mode((screen_width, screen_height))  
  
# 设置颜色  
WHITE = (255, 255, 255)  
GREEN = (0, 255, 0)  
RED = (255, 0, 0)  
  
# 设置贪吃蛇的初始位置和大小  
snake = [(100, 50), (90, 50), (80, 50)]  
snake_direction = "RIGHT"  
  
# 设置食物的位置  
food = (random.randint(10, (screen_width // 10) - 1) * 10, random.randint(10, (screen_height // 10) - 1) * 10)  
  
# 游戏主循环  
while True:  
    for event in pygame.event.get():  
        if event.type == pygame.QUIT:  
            pygame.quit()  
            sys.exit()  
        elif event.type == pygame.KEYDOWN:  
            if event.key == pygame.K_UP and snake_direction != "DOWN":  
                snake_direction = "UP"  
            elif event.key == pygame.K_DOWN and snake_direction != "UP":  
                snake_direction = "DOWN"  
            elif event.key == pygame.K_LEFT and snake_direction != "RIGHT":  
                snake_direction = "LEFT"  
            elif event.key == pygame.K_RIGHT and snake_direction != "LEFT":  
                snake_direction = "RIGHT"  
  
    # 移动贪吃蛇  
    new_head = list(snake[0])  
    if snake_direction == "UP":  
        new_head[1] -= 10  
    elif snake_direction == "DOWN":  
        new_head[1] += 10  
    elif snake_direction == "LEFT":  
        new_head[0] -= 10  
    elif snake_direction == "RIGHT":  
        new_head[0] += 10  
  
    snake.insert(0, new_head)  
  
    # 检查是否吃到食物  
    if snake[0] == food:  
        food = (random.randint(10, (screen_width // 10) - 1) * 10, random.randint(10, (screen_height // 10) - 1) * 10)  
    else:  
        tail = snake.pop()  
  
    # 检查是否撞到墙或自己  
    if new_head[0] < 0 or new_head[0] >= screen_width or new_head[1] < 0 or new_head[1] >= screen_height:  
        break  
    for body_part in snake[1:]:  
        if body_part == new_head:  
            break  
  
    # 绘制屏幕  
    screen.fill(WHITE)  
    pygame.draw.rect(screen, GREEN, (food[0], food[1], 10, 10))  
    for pos in snake:  
        pygame.draw.rect(screen, RED, (pos[0], pos[1], 10, 10))  
    pygame.display.flip()  
  
    # 控制游戏速度  
    pygame.time.Clock().tick(10)  
  
print("Game Over!")

 这段代码创建了一个简单的贪吃蛇游戏。你可以使用箭头键来控制蛇的方向,并尝试吃到屏幕上的食物。当蛇撞到墙或自己的身体时,游戏结束。这是一个非常基础的版本,还有很多可以改进和添加的地方,比如添加分数、更复杂的图形、音效等。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

攻城狮灵灵漆

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值