b站贪吃蛇视频

P01

import sys # 退出用此模块
import pygame
import os # 操作系统模块os.environ["SDL_VIDEO_CENTERED"] = "1" # 使得游戏窗口居中pygame.init()   # 初始化模块。返回值为一个元组,(x, y),其中x是成功载入的模块数,y为失败载入的模块数
pygame.display.set_caption("pysnake") # 设置标题game_clock = pygame.time.Clock() # 创建一个时钟对象来确定游戏运行的帧数
game_speed = 60 # 游戏帧数,帧数太小会卡顿,过高浪费CPUgame_screen_width, game_screen_height = 640, 480 # 窗口尺寸参数
game_screen = pygame.display.set_mode((game_screen_width, game_screen_height)) # 初始化窗口,返回一个surface对象
game_bgcolor = 33, 66, 33 # 窗口颜色参数# 定义一个正方形的参数:颜色,坐标,尺寸
square_color = 33, 255, 33
square_x, square_y = 0, 0
square_size = 20game_playing = True # 标记游戏是否进行
while game_playing:# 用户控制for event in pygame.event.get():if event.type == pygame.QUIT: # pygame.QUIT的实际值为数值12game_playing = False# 更新数据# 更新画面game_screen.fill(game_bgcolor) # 游戏窗口填充指定颜色pygame.draw.rect(game_screen, square_color, (square_x, square_y,square_size, square_size)) # 在game_screen上画一个正方形pygame.display.flip() # 更新游戏画面game_clock.tick(game_speed)pygame.quit() # 退出模块
sys.exit(0)

P02

import sys # 退出用此模块
import pygame
import os # 操作系统模块os.environ["SDL_VIDEO_CENTERED"] = "1" # 使得游戏窗口居中pygame.init()   # 初始化模块。返回值为一个元组,(x, y),其中x是成功载入的模块数,y为失败载入的模块数
pygame.display.set_caption("pysnake") # 设置标题game_clock = pygame.time.Clock() # 创建一个时钟对象来确定游戏运行的帧数
game_speed = 60 # 游戏帧数,帧数太小会卡顿,过高浪费CPUgame_screen_width, game_screen_height = 640, 480 # 窗口尺寸参数
game_screen = pygame.display.set_mode((game_screen_width, game_screen_height)) # 初始化窗口,返回一个surface对象
game_bgcolor = 33, 66, 33 # 窗口颜色参数# 定义一个正方形的参数:颜色,坐标,尺寸,速率值,x和y方向上的初始速率
square_color = 33, 255, 33
square_x, square_y = 0, 0
square_size = 20
square_speed = 2
square_speed_x, square_speed_y = square_speed, 0 # 初始默认方块水平向右移动game_playing = True # 标记游戏是否进行
while game_playing:# 用户控制,# 可通过在for循环内print(event)查看每个事件对象的具体内容for event in pygame.event.get():if event.type == pygame.QUIT: # pygame.QUIT的实际值为数值12,pygame对每种事件进行了编号game_playing = False# 若事件对象的属性 类型type 为 键盘摁下,则进一步看事件对象的属性 值keyelif event.type == pygame.KEYDOWN:if event.key == pygame.K_UP: # 若摁下的为K_UP键square_speed_x = 0 # x方向速率置0square_speed_y = -square_speed # y方向速率置-square_speedelif event.key == pygame.K_DOWN:square_speed_x = 0square_speed_y = square_speedelif event.key == pygame.K_LEFT:square_speed_x = -square_speedsquare_speed_y = 0elif event.key == pygame.K_RIGHT:square_speed_x = square_speedsquare_speed_y = 0# 更新数据square_x += square_speed_x # 更新方块坐标位置square_y += square_speed_yif square_x < 0: # 控制方块位置在游戏窗口内square_x =0elif square_x > game_screen_width - square_size:square_x = game_screen_width - square_sizeif square_y < 0:square_y =0elif square_y > game_screen_height - square_size:square_y = game_screen_height - square_size# 更新画面game_screen.fill(game_bgcolor) # 游戏窗口填充指定颜色pygame.draw.rect(game_screen, square_color, (square_x, square_y,square_size, square_size)) # 在game_screen上画一个正方形pygame.display.flip() # 更新游戏画面game_clock.tick(game_speed)pygame.quit() # 退出模块
sys.exit(0)

P03

import sys # 退出用此模块
import pygame
import os # 操作系统模块os.environ["SDL_VIDEO_CENTERED"] = "1" # 使得游戏窗口居中pygame.init()   # 初始化模块。返回值为一个元组,(x, y),其中x是成功载入的模块数,y为失败载入的模块数
pygame.display.set_caption("pysnake") # 设置标题game_clock = pygame.time.Clock() # 创建一个时钟对象来确定游戏运行的帧数
game_speed = 120 # 游戏帧数,帧数太小会卡顿,过高浪费CPUgame_screen_width, game_screen_height = 640, 480 # 窗口尺寸参数
game_screen = pygame.display.set_mode((game_screen_width, game_screen_height)) # 初始化窗口,返回一个surface对象
game_bgcolor = 0, 0, 0 # 窗口颜色参数
game_linecolor = 33, 33, 33# 定义一个正方形的参数
square_color = 33, 255, 33 # 两种颜色装饰方块,增加趣味性
square_color2 = 33, 192, 33CELL_SIZE = 20 # 方块尺寸
square_rect = pygame.Rect(0, 0, CELL_SIZE, CELL_SIZE) # 方块位置和大小
UP, DOWN, LEFT, RIGHT = (0, -1), (0, 1), (-1, 0), (1, 0) # 定义元组常量表征方块移动的具体方向和速率
square_direction = RIGHT # 定义初始速度(表观速度),只有方块在网格内才转向square_turn = RIGHT # 定义初始速度(真实速度),方向键一敲击立刻转向game_running = True # 标记游戏是否进行
while game_running:# 用户控制,# 可通过在for循环内print(event)查看每个事件对象的具体内容for event in pygame.event.get():if event.type == pygame.QUIT: # pygame.QUIT的实际值为数值12,pygame对每种事件进行了编号game_running = False# 若事件对象的属性 类型type 为 键盘摁下,则进一步看事件对象的属性 值keyelif event.type == pygame.KEYDOWN:if event.key == pygame.K_UP: # 若摁下的为K_UP键square_turn = UP # 速度改变elif event.key == pygame.K_DOWN:square_turn = DOWNelif event.key == pygame.K_LEFT:square_turn = LEFTelif event.key == pygame.K_RIGHT:square_turn = RIGHT# 更新数据if square_rect.x % CELL_SIZE == 0 and square_rect.y % CELL_SIZE == 0: # 只有方块在格子内,表观速度才被赋值改变square_direction = square_turnsquare_rect = square_rect.move(square_direction)if square_rect.left < 0: # 控制方块位置在游戏窗口内square_rect.left = 0elif square_rect.right > game_screen_width:square_rect.right = game_screen_widthif square_rect.top < 0:square_rect.top = 0elif square_rect.bottom > game_screen_height:square_rect.bottom = game_screen_heightprint("坐标:(%d, %d) 速度:(%d, %d)" % (square_rect.x, square_rect.y,square_direction[0], square_direction[1]) )# 更新画面game_screen.fill(game_bgcolor) # 游戏窗口填充指定颜色for i in range(CELL_SIZE, game_screen_width, CELL_SIZE): # 游戏窗口内画纵向线pygame.draw.line(game_screen, game_linecolor, (i, 0), (i, game_screen_height))for i in range(CELL_SIZE, game_screen_height, CELL_SIZE): # 游戏窗口内画纵向线pygame.draw.line(game_screen, game_linecolor, (0, i), (game_screen_width, i))# pygame.draw.rect(game_screen, square_color, square_rect) # 在game_screen上画一个正方形game_screen.fill(square_color, square_rect) # 在game_screen上画一个方块game_screen.fill(square_color2, square_rect.inflate(-4, -4)) # 在方块内再画一个更小的块,比外面的边长小4pygame.display.flip() # 更新游戏画面game_clock.tick(game_speed)pygame.quit() # 退出模块
sys.exit(0)

Python练习:贪吃蛇相关推荐

  1. python 贪吃蛇小游戏代码_10分钟再用Python编写贪吃蛇小游戏

    Python编写贪吃蛇 前不久我们公众号发布了一篇C++编写贪吃蛇小游戏的推文,反响空前.看来大家对这类简单易上手小游戏还是很喜爱的. 恰逢2018年IEEE Spectrum编程语言排行榜新鲜出炉, ...

  2. python制作贪吃蛇游戏_用Python写贪吃蛇游戏的代码实例

    这篇文章主要为大家详细介绍了Python贪吃蛇游戏的编写代码,具有一定的参考价值,感兴趣的小伙伴们可以参考一下 最近在学Python,想做点什么来练练手,命令行的贪吃蛇一般是C的练手项目,但是一时之间 ...

  3. 怎么用python编贪吃蛇_少儿编程分享:手把手教你用PYTHON编写贪吃蛇(二)

    原标题:少儿编程分享:手把手教你用PYTHON编写贪吃蛇(二) 检测和判断 无论我们制作的简单或者复杂的游戏 这都是最关键的两个部分 事件处理循环 61. while True: # 游戏主循环 62 ...

  4. 10分钟用python编写贪吃蛇小游戏_牛得一批!10分钟用Python编写一个贪吃蛇小游戏...

    贪吃蛇,大家应该都玩过.当初第一次接触贪吃蛇的时候 ,还是能砸核桃的诺基亚上,当时玩的不亦乐乎.今天,我们用Python编程一个贪吃蛇游戏,下面我们先看看效果: 好了,先介绍一个思路 所有的游戏最主要 ...

  5. python贪吃蛇毕业设计_【干货|python项目实例——贪吃蛇】- 环球网校

    [摘要]当今世界充满了各种数据,而python是其中一种的重要组成部分.然而,若想其有所应用,我们需要对这些python理论进行实践.其中包含很多有趣的的过程,然后将其用于某些方面.其中一种应用就是p ...

  6. 10分钟教你用python打造贪吃蛇超详细教程

    更多精彩尽在微信公众号[程序猿声] 10分钟教你用python打造贪吃蛇超详细教程 在家闲着没妹子约, 刚好最近又学了一下python,听说pygame挺好玩的.今天就在家研究一下, 弄了个贪吃蛇出来 ...

  7. 用Python做贪吃蛇小游戏

    用Python做贪吃蛇小游戏 简介 引言 游戏预览 结构图 代码框架图 代码讲解 main主函数-开始工作 show_start_info()欢迎进入游戏 running_game-让我们开始游戏吧 ...

  8. python编写贪吃蛇游戏下载,python实现简单的贪吃蛇游戏

    本文实例为大家分享了python实现贪吃蛇游戏的具体代码,加入按钮.难度.音乐.得分功能,供大家参考,具体内容如下 贪吃蛇小游戏,可以显示出得分,又背景音乐,难度选择和开始重启按钮设置. 游戏实现效果 ...

  9. 如何用python开发一个贪吃蛇游戏_教你一步步利用python实现贪吃蛇游戏

    教你一步步利用python实现贪吃蛇游戏 来源:中文源码网    浏览: 次    日期:2019年11月5日 [下载文档:  教你一步步利用python实现贪吃蛇游戏.txt ] (友情提示:右键点 ...

  10. python地牢贪吃蛇 —Roguelike贪吃蛇游戏游戏源码下载

    Snague 是一款Roguelike类型的贪吃蛇小游戏.在保留贪吃蛇核心机制的基础上进丰富了游戏内容. 游戏中您不但可以挑战不同关卡, 还能够获得不同增强, 过五关斩六将, 打破高分记录, 成为最强 ...

最新文章

  1. DevOps:软件架构师行动指南1.7 障碍
  2. ruby 反射机制常用方法
  3. android fragment 退出程序,android – 应用程序在Fragment中单击后退按钮后关闭
  4. 分布式系统session一致性的问题
  5. Android内核剖析
  6. mysql8 安装_MySQL8.x安装使用
  7. 《Java并发编程实战》 第二章:线程安全性
  8. fileurlwithpath urlwithstring 这俩有啥区别吗
  9. Python多线程实例
  10. hive plsql使用示例
  11. [Sensor]BMI160-加速度计、陀螺仪传感器
  12. UnboundLocalError: local variable ‘Num_fSu‘ referenced before assignment
  13. 《程序员养成记》第5集 学习编程的乐趣
  14. 基于React Native和Ethers.js的电子钱包(二):路由和导航
  15. SQL Server安装总是缺少msi等文件,出现错误1612、1706等解决办法
  16. Quartus II 13.1安装时出现的问题
  17. HDF5 windows编译 release版本、Debug版本
  18. 大数相乘 - 浮点数
  19. 基于php的宠物医院管理系统的设计与实现,php宠物医院信毕业设计息管理系统
  20. java实现监听文件

热门文章

  1. 苹果回忆:为证明 iPhone 结实,乔布斯拿起手机就往地上摔
  2. 山东艾思软件科技有限公司-公司介绍
  3. 2023第八届少儿模特明星盛典 小超模矫沐含 担任全球赛代言人
  4. STM32F103C8T6 0.42寸的OLED屏幕IIC例程
  5. java中的set_java中的set是什么意思
  6. 微信小程序---倒计时
  7. 几十个恶毒网站,不怕死的朋友请进
  8. 利用pytorch 做一个简单的神经网络实现sklearn库中莺尾花的分类
  9. linux命令-ll之按时间、大小顺序排列显示
  10. python scratch unity怎么读_Python如何像scratch一样朗读文字?