Python简单通俗易懂的贪吃蛇小游戏,儿时童年的味道!

Python编写游戏——贪吃蛇(含源码) 贪吃蛇哈哈哈哈~ 阅读详情

前言

本文的文字及图片来源于网络,仅供学习、交流使用,不具有任何商业用途,如有问题请及时联系我们以作处理。

PS:如有需要Python学习资料的小伙伴可以点击下方链接自行获取

Python免费学习资料、代码以及交流解答点击即可加入


今天,给大家介绍一个简单易懂的贪吃蛇小游戏

代码 如下

import pygame,sys,random
from pygame.locals import *
#定义颜色变量  目标方块的颜色
redColor = pygame.Color(250,0,0)
#贪吃蛇的颜色
whiteColor = pygame.Color(255,255,255)
#背景颜色
blackColor = pygame.Color(0,0,0)
 
def gameOver():
    pygame.quit()
    sys.exit()
 
 
def main():
    #初始化pygame
    pygame.init()
    #控制游戏速度
    fpsColck = pygame.time.Clock()
    #创建pygame显示层
    playSurface = pygame.display.set_mode((640,480))
    pygame.display.set_caption('贪吃蛇')
    #初始化贪吃蛇的起始坐标
    snakePosition = [100,100]
    #初始化贪吃蛇的长度
    snakeBody = [[100,100],[80,100],[60,100]]
    #初始化目标方块的坐标
    targetPosition = [300,300]
    #初始化一个目标方块的标记  目的:用来判断是否吃掉这个目标方块
    targerflag = 1
    #初始化方向
    direction = 'right'
    #定义一个方向变量
    changeDirection = direction
 
    while True:
        for event in pygame.event.get():
 
            if event.type == QUIT:
                pygame.quit()
                sys.exit()
            elif event.type == KEYDOWN:
                if event.key == K_RIGHT:
                    changeDirection = 'right'
                if event.key == K_LEFT:
                    changeDirection = 'left'
                if event.key == K_UP:
                    changeDirection = 'up'
                if event.key == K_DOWN:
                    changeDirection = 'down'
                    #对应键盘Esc键
                if event.key == K_ESCAPE:
                    pygame.event.post(pygame.event.Event(QUIT))
        #确定方向
        if changeDirection == 'left' and not direction == 'right':
            direction = changeDirection
        if changeDirection == 'right' and not direction == 'left':
            direction = changeDirection
        if changeDirection == 'up' and not direction == 'down':
            direction = changeDirection
        if changeDirection == 'down' and not direction == 'up':
            direction = changeDirection
 
 
        #根据方向移动蛇头的坐标
        if direction == 'right':
            snakePosition[0] += 20
        if direction == 'left':
            snakePosition[0] -= 20
        if direction == 'up':
            snakePosition[1] -= 20
        if direction == 'down':
            snakePosition[1] += 20
 
        #增加蛇的长度
        snakeBody.insert(0,list(snakePosition))
 
        #判断目标方块是否被吃掉
        if snakePosition[0] == targetPosition[0] and snakePosition[1] == targetPosition[1]:
            targerflag = 0
        else:
            snakeBody.pop()
 
        if targerflag == 0:
            x = random.randrange(1,32)
            y = random.randrange(1,24)
            targetPosition = [int(x*20),int(y*20)]
            targerflag = 1
        #绘制pygame的显示层
        playSurface.fill(blackColor)
 
        for position in snakeBody:
            pygame.draw.rect(playSurface,whiteColor,Rect(position[0],position[1],20,20))
            pygame.draw.rect(playSurface,redColor,Rect(targetPosition[0],targetPosition[1],20,20))
 
        pygame.display.flip()
 
        if snakePosition[0]> 620 or snakePosition[0] < 0:
            gameOver()
        elif snakePosition[1] > 460 or snakePosition[1] < 0:
            gameOver()
        #修改速度
        fpsColck.tick(10)
 
if __name__ == '__main__':
    main()
Python小游戏:100行代码实现贪吃蛇小游戏 Python所有方向路线就是把Python常用的技术点做整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。 阅读详情

相关推荐

【童年经典小游戏】使用Python实现经典贪吃蛇游戏

贪吃蛇的游戏规则相对简单:玩家通过控制蛇的移动方向,让蛇吃掉场景中的食物,每吃到一个食物,蛇身会增长一节,同时得分增加。当蛇撞到墙壁或自身时,游戏结束。虽然逻辑简单,但是实现起来需要兼顾用户交互、动画刷新和碰撞检测等多个层面的问题。通过本篇博客的学习,我们了解了如何借助Python与Pygame实现一个简单的贪吃蛇游戏。从基础的游戏循环、蛇与食物的数据结构设计,到碰撞检测与绘制画面,都有了一个清晰的实现范例。

null18的博客 6468

学生学python编程---实现贪吃蛇小游戏+源码

这几年人工智能技术大发展,Python因此几乎成了第一位的语言。实际上,多年来,它不仅在软件工程师中得到广泛使用,也是各行业通用的专家语言,就是说,不管孩子以后做什么,都可能用得着。准备针对我自己上小学的孩子,每周抽出些时间,通过学习他们感兴趣的小游戏,逐步把python知识点带进游戏的制作过程中,用到哪些知识简单的解绍一下哪些,以学,以用为主。本次我们将编写一个贪吃蛇的游戏。通过键盘上、下、左、右控制小蛇上、下、左、右移动,吃到食物后长度加1;蛇头碰到自身或窗口边缘,游戏失败。

fqfq123456的专栏 7742

用python制作一个简单的贪吃蛇小游戏

前言 本文的文字及图片来源于网络,仅供学习、交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理。 PS:如有需要Python学习资料的小伙伴可以加点击下方链接自行获取 python免费学习资料以及群交流解答点击即可加入 贪吃蛇游戏是一款经典的益智游戏,既简单又耐玩。 回味童年经典,今天我们来一同学习贪吃蛇游戏的制作。 开发工具 python版本:3.6.8 编辑器:pycharm 相关模块 import copy import random import py

【优快云官方推荐】 1526

Python代码之贪吃蛇

在游戏循环中,我们处理用户的输入,并根据输入来更新蛇的方向。如果蛇的方向与输入方向相反,则不允许蛇掉头。然后,我们将根据方向更新蛇的位置。这是一个简单的贪吃蛇游戏,它使用了Python的Pygame库。如果玩家撞到边界或撞到蛇的身体,游戏就会结束。如果蛇吃到了食物,我们将不再生成新的食物,而是将蛇的身体长度加1。否则,我们将生成新的食物,以便玩家继续游戏。列表的开头,并从列表的末尾删除最后一个元素,以确保蛇的身体长度不变。蛇的初始长度为3,位于屏幕上方的中央位置。来跟踪蛇的位置,并使用。

糯米导航 5345

用Python找到童年的乐趣,制作一款贪吃蛇小游戏。新手教程!

开发工具python版本:3.6.8编辑器:pycharm相关模块import copyimport randomimport pygame模块安装pip install -i https://pypi.doubanio.com/simple/ --trusted-host pypi.doubanio.com pygame实现效果这个就是代码运行的效果了。以前就是这样一个极为枯燥的游戏都能很多人抢着玩,一人一条命,能玩十几二十分钟!本来很小的屏幕都被挤满了!下面直接把代码分享给你们!完整源代码完整

2401_83703951的博客 1148

Python小游戏自己动手编写,你能写出几个(分享版)

简单编写的Python小游戏,快来看看你能编写几个?

m0_69234258的博客 1万+

用python制作几款简单又好玩的小游戏,找回童年的记忆

今天给大家带来几个Python小游戏,找回童年的同时学习编程 一、接金币 普通难度:❤ 玩法介绍:吃金币,控制左右键,有手就行。 源码分享 import os import cfg import sys import pygame import random from modules import * '''游戏初始化''' def initGame(): # 初始化pygame, 设置展示窗口 pygame.init() screen = pygame.display.set

Libra1313的博客 3万+

一行Python代码玩遍童年的小游戏

写在前面 贪吃蛇,吃豆人,迷宫,井字游戏......这些小游戏我相信大家小的时候肯定玩过,或许在某个时段还沉迷过. 随着年龄的增长,这些小游戏离我们越来越远,但是我相信大家的童心还是一直在的 今天就分享一个真正可以玩耍的GitHub项目 --- free-python-games 安装与使用 python大家都懂的,安装第三方库非常简单 pip install freegames """ 当然在学习Python的道路上肯定会困难,没有好的学习资料,怎么去学习呢? 学习Python中有不明白推荐加

Python_kele的博客 1081

6个Python童年小游戏,开始敲起来,玩吧!

虽然程序员敲代码多年,但童心还是一直都在的,今天就分享一些私藏的童年游戏,十几行代码就能进入使用Python开发的小游戏快乐玩耍!如果你是一个80后,那么炸弹人绝度是你童年的欢乐之一,虽然简单而粗糙的画面,却依旧抵挡不了它在FC上的经典。回味一下属于我们的童年~俄罗斯方块,如果要说到游戏圈里的资历,俄罗斯方块应该是当之无愧的老大哥了。你的童年,我的童年好像都一样,谁的童年又没玩过游戏呢,这些小游戏应该只有玩过才会懂吧。童年游戏不可缺少的五子棋,你攻我守,守中进攻,五子棋一玩就可以玩一下午。

weixin_55154866的博客 8570

Python编写贪吃蛇游戏完整教程与源码

贪吃蛇游戏是一款非常经典的游戏,在本文中,我将为您展示如何使用Python编写贪吃蛇游戏的完整流程,并提供相应的源代码。接下来,我们需要定义一些变量和常量,例如游戏屏幕的宽度和高度,以及蛇的初始长度等等。最后,我们需要编写主函数,并进行游戏循环,包括监听用户输入、蛇的移动、吃到食物等等。以上代码可以让您轻松地使用Python编写一个简单的贪吃蛇游戏,如果您有任何问题或建议,欢迎随时联系我。接着,我们需要定义一些函数,例如画出游戏界面、生成食物、游戏结束等等。Python编写贪吃蛇游戏完整教程与源码。

学习使你进步。 595

【高低温试验】试验报告模板

高低温循环试验,验证被测设备(DUT)在极端高温、低温环境下的性能稳定性、功能可靠性及安全性,确保其符合设计规范和相关标准(如GB/T 2423.1、GB/T 2423.2)。:验证设备在剧烈温度变化下的耐受能力(如-40℃↔+85℃,温变速率≥10℃/min)。低温测试标准:GB/T 2423.2-2008(温度-40℃,保持时间4小时):模拟高温高湿环境(如温度+60℃,湿度95%RH),测试防潮性能。

电路巫师把一切不可能变成不可能 1565

python实现贪吃蛇小游戏(附源码)

十分钟的时间,足够我们完成一个贪吃蛇小游戏的从零到一的制作过程,唤起那些沉淀在记忆深处的片段,重新演绎一场美好的回忆之旅。它不仅是游戏世界的经典之一,更是我们童年岁月中不可或缺的一部分,一个承载回忆的游乐场。每一分每一秒,都是成长路上的一个标记,而游戏结束的时候,又是对那段失落感和温馨感的深刻回味。游戏开发的过程就像是一场时光穿越,从屏幕宽度、高度到小方格大小的定义,每一行代码都是对童年时光的致敬。游戏循环的设计,通过键盘输入监听实现蛇的移动和游戏的暂停,让我们仿佛回到了小时候手持小键盘的场景。

鱼干的博客 3463

抖音视频数据获取实战:从API调用到热门内容挖掘

通过抖音API获取视频数据,企业可快速构建数据驱动的运营体系。本文提供了从权限申请到商业落地的全流程指南,建议结合自身业务扩展功能。如有技术问题,欢迎​​评论​​区留言讨论!#抖音开发 #数据挖掘 #短视频运营 #API调用 #Python实战。

WBKJ_Noah_的博客 6396

python 贪吃蛇 turtle_关于python:用Python实现童年小游戏贪吃蛇

贪吃蛇作为一款经典小游戏,早在 1976 年就面世了,我最早接触它还是在家长的诺基亚手机中。只管贪吃蛇的历史绝对比拟长远,但它却有着非常倔强的生命力,放弃经久不衰,其中很重要的起因便是游戏厂家一直的对其进行更新迭代。当初,这款游戏无论是游戏场景、规定等都变得非常丰盛。接下来,咱们看一下如何通过 Python 简略的实现这款小游戏。规定要有游戏主界面、贪吃蛇、食物可能管制贪吃蛇挪动并获取食物贪吃蛇吃...

weixin_39721807的博客 574

Fluent求解器——湍流参数的设置

Fluent湍流参数的介绍和设置。

Ronko_G的博客 4万+

从模态到颤振:深入解读Nastran的V-g/V-f图,判断你的机翼设计是否安全

本文深入解析Nastran中的V-g/V-f图在机翼颤振分析中的应用,帮助工程师准确判断设计安全性。通过模态分析到颤振边界的完整判读逻辑,结合气动弹性特性,指导优化机翼结构设计,确保飞行安全。

weixin_28732953的博客 472

贼好玩!几行Python代码将童年游戏搬上屏幕!

贼好玩!几行Python代码将童年游戏搬上屏幕!

分享Python知识 2651

Coze平台智能体开发实战:打造测试工程师的AI助手

智能体是具备特定身份和能力的AI实体,由大语言模型(LLM)驱动,并通过插件、知识库和工作流扩展其能力。明确的角色定位:可以设定特定身份和专业领域扩展能力:通过插件连接外部工具和服务记忆能力:通过知识库存储和检索专属信息流程化处理:通过工作流执行复杂多步任务通过Coze平台创建测试工程师智能体,可以显著提升测试效率和质量。明确的角色定位:聚焦测试工程师的实际需求丰富的知识库:提供准确的领域知识支持合适的工具集成:通过插件连接现有工具链持续迭代优化:根据反馈不断改进智能体行为自动化测试生成。

hogwarts_beibei的博客 1005

贪吃蛇的编程python_用Python实现童年贪吃蛇小游戏功能的实例代码

贪吃蛇作为一款经典小游戏,早在 1976 年就面世了,我最早接触它还是在家长的诺基亚手机中。尽管贪吃蛇的历史相对比较久远,但它却有着十分顽强的生命力,保持经久不衰,其中很重要的原因便是游戏厂家不断的对其进行更新迭代。现在,这款游戏无论是游戏场景、规则等都变得十分丰富。接下来,我们看一下如何通过 Python 简单的实现这款小游戏。规则要有游戏主界面、贪吃蛇、食物能够控制贪吃蛇移...

weixin_34259816的博客 368

Unreal5从入门到精通之EnhancedInput增强输入系统详解

从Unreal5开始,老版的输入系统,正式替换为EnhancedInput增强型输入系统,他们之间有什么区别呢?如果有使用过Unity的同学,大概也知道,Unity也在2020版本之后逐渐把输入系统也升级成了新版输入系统,为什么Unreal和Unity都热衷于升级输入系统呢?这之间又有什么联系呢?官方:增强输入EnhancedInput希望这篇文章能够对你有所帮助。

TxNet 945

AutoSAR配置视频讲解:新建DaVinci工程

AutoSAR实验视频讲解:闪烁一颗LED实验【新建DaVinci工程】 上一篇 | 下一篇 | 总目录 实验架构图 视频本频放在了文末,下图描述了本次实验配置内容在AutoSAR架构中的位置,供大家参考 实验内容 本节课程讲解新建DaVinci工程,听上去新建工程很简单,但是还是需要很多的准备工作和细节。主要内容是新建工程和导入dbc文件和导入arxml文件的方法 主要步骤 新建DaVinci工程 导入.dbc通信矩阵文件 导入Mcal的arxml文件 实验视频2:Mcal配置 提示:版权所在,违

雪云飞星的博客 6276

超赞!贪吃蛇、吃豆人和数字华容道等童年小游戏1行Python代码就能玩

大家好,我是才哥。 今天分享一个有趣的Python游戏库freegames,它包含20余款经典小游戏,像贪吃蛇、吃豆人、乒乓、数字华容道等等,依托于标准库Turtle。 我们不仅可以通过1行代码进行重温这些童年小游戏,还可以查看源码自己学习下游戏编写,超赞! 1. 安装 通过pip简单安装,目前最新版本是2.3.2 pip install freegames 2. 基础介绍 安装完成后,我们可以通过以下指令查看相关信息 # 查看已有游戏列表 !python -m freegames list # 在ju

可以叫我才哥 1742

数学建模模型总结

这是本人在两年内准备参加数学建模竞赛搜集到的模型资料,已经经过了本人的筛选和整理,希望能够对准备参加数学建模竞赛的学弟学妹们提供一些帮助!

上一篇: 好玩又有趣的Python实例小游戏代码,我能在电脑上琢磨一天
下一篇: 零基础学Python:函数精讲
酸菜鱼编程
博客等级 码龄6年 155粉丝 63原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值