当前位置: 首页 > news >正文

基于阿里云的网站开发互联网广告行业分析

基于阿里云的网站开发,互联网广告行业分析,鞍山58招聘,做外贸要建什么网站使用Pythonpygame贪吃蛇小游戏 使用第三方库pygame,关于Python中pygame游戏模块的安装使用可见 https://blog.csdn.net/cnds123/article/details/119514520 给出两种实现。 第一种 运行效果如下: 游戏源码如下: import pygame import sy…

使用Python+pygame贪吃蛇小游戏

使用第三方库pygame,关于Python中pygame游戏模块的安装使用可见 https://blog.csdn.net/cnds123/article/details/119514520

给出两种实现。

第一种

运行效果如下:

游戏源码如下:

import pygame
import sys
import random# 初始化pygame
pygame.init()# 设置屏幕大小
screen_size = (640, 480)
screen = pygame.display.set_mode(screen_size)# 设置游戏标题
pygame.display.set_caption("贪吃蛇:按p键暂停/继续")# 定义颜色
WHITE = (255, 255, 255)
GREEN = (0, 255, 0)
RED = (255, 0, 0)# 蛇的初始位置
snake_pos = [[100, 100], [80, 100], [60, 100]]# 食物的初始位置
food_pos = [300, 300]# 蛇的初始速度
snake_speed = [20, 0]# 初始化分数
score = 0# 创建字体对象
font = pygame.font.Font(None, 36)# 游戏暂停标志
paused = False# 主循环
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_p:  # 按 P 键暂停或继续paused = not pausedif not paused:if event.key == pygame.K_UP and snake_speed != [0, 20]:snake_speed = [0, -20]elif event.key == pygame.K_DOWN and snake_speed != [0, -20]:snake_speed = [0, 20]elif event.key == pygame.K_LEFT and snake_speed != [20, 0]:snake_speed = [-20, 0]elif event.key == pygame.K_RIGHT and snake_speed != [-20, 0]:snake_speed = [20, 0]if not paused:# 更新蛇的位置snake_pos.insert(0, [snake_pos[0][0] + snake_speed[0], snake_pos[0][1] + snake_speed[1]])# 检查蛇头是否碰到墙壁,如果是则“经过墙壁”if snake_pos[0][0] < 0:snake_pos[0][0] = screen_size[0]-20elif snake_pos[0][0] >= screen_size[0]:snake_pos[0][0] = 0elif snake_pos[0][1] < 0:snake_pos[0][1] = screen_size[1]-20elif snake_pos[0][1] >= screen_size[1]:snake_pos[0][1] = 0# 检查蛇头是否碰到食物if snake_pos[0] == food_pos:food_pos = [random.randrange(1, screen_size[0] // 20) * 20, random.randrange(1, screen_size[1] // 20) * 20]score += 1  # 计分else:snake_pos.pop()# 绘制游戏界面screen.fill(WHITE)for pos in snake_pos:pygame.draw.rect(screen, GREEN, pygame.Rect(pos[0], pos[1], 20, 20))pygame.draw.rect(screen, RED, pygame.Rect(food_pos[0], food_pos[1], 20, 20))# 显示得分score_text = font.render("Score: " + str(score), True, (0, 0, 0))screen.blit(score_text, (10, 10))# 如果游戏暂停,则显示暂停提示if paused:pause_text = font.render("Paused. Press P to continue.", True, (0, 0, 0))screen.blit(pause_text, (screen_size[0] // 2 - pause_text.get_width() // 2, screen_size[1] // 2 - pause_text.get_height() // 2))pygame.display.flip()  # 更新屏幕显示# 控制游戏速度pygame.time.Clock().tick(6)

第二种

就不给出运行效果图了,你可以运行看看。

下面给出另一种实现源码:

import pygame
import time
import random# 设置蛇的速度
snake_speed = 15# 窗口颜色
white = pygame.Color(255, 255, 255)# 蛇的颜色
green = pygame.Color(0, 255, 0)# 食物的颜色
red = pygame.Color(255, 0, 0)# 初始化pygame
pygame.init()# 初始化游戏窗口
window = pygame.display.set_mode((720, 480))# FPS(帧率)控制器
fps = pygame.time.Clock()# 定义蛇的默认位置
snake_position = [100, 50]# 定义蛇身体的前四个块
snake_body = [[100, 50], [90, 50], [80, 50], [70, 50]]# 食物位置
food_position = [random.randrange(1, 72) * 10, random.randrange(1, 48) * 10]# 蛇吃到食物时
food_spawn = True# 设置默认的蛇的方向为向右
direction = 'RIGHT'# 初始分数
score = 0def game_over():# 设置字体以显示分数#font = pygame.font.SysFont(None, 26)                font = pygame.font.Font("C:\\Windows\\Fonts\\simsun.ttc", 26) #显示中文文字score_text = font.render('得分: ' + str(score), True, green)window.blit(score_text, [320, 240])# 显示信息again_text = font.render('游戏结束!按任意键重新开始', True, red)  # 修改颜色变量为whitewindow.blit(again_text, [160, 280])pygame.display.flip()  # 使用 flip() 来更新整个屏幕# 等待用户按键然后重新开始游戏waiting_for_input = Truewhile waiting_for_input:for event in pygame.event.get():if event.type == pygame.KEYDOWN:waiting_for_input = Falseelif event.type == pygame.QUIT:pygame.quit()quit()# 游戏重新开始main()# 游戏的主逻辑
def main():global direction, food_position, food_spawn, score# 重置游戏score = 0snake_position = [100, 50]snake_body = [[100, 50], [90, 50], [80, 50], [70, 50]]direction = 'RIGHT'food_position = [random.randrange(1, 72) * 10, random.randrange(1, 48) * 10]food_spawn = Truewhile True:# 处理按键事件for event in pygame.event.get():if event.type == pygame.QUIT:pygame.quit()quit()elif event.type == pygame.KEYDOWN:if event.key == pygame.K_UP and direction != 'DOWN':direction = 'UP'if event.key == pygame.K_DOWN and direction != 'UP':direction = 'DOWN'if event.key == pygame.K_LEFT and direction != 'RIGHT':direction = 'LEFT'if event.key == pygame.K_RIGHT and direction != 'LEFT':direction = 'RIGHT'# 移动蛇if direction == 'UP':snake_position[1] -= 10if direction == 'DOWN':snake_position[1] += 10if direction == 'LEFT':snake_position[0] -= 10if direction == 'RIGHT':snake_position[0] += 10# 蛇身体增长机制snake_body.insert(0, list(snake_position))if snake_position[0] == food_position[0] and snake_position[1] == food_position[1]:score += 1food_spawn = Falseelse:snake_body.pop()if not food_spawn:food_position = [random.randrange(1, 72) * 10, random.randrange(1, 48) * 10]food_spawn = True# 图形界面window.fill(white)for pos in snake_body:pygame.draw.rect(window, green, pygame.Rect(pos[0], pos[1], 10, 10))pygame.draw.rect(window, red, pygame.Rect(food_position[0], food_position[1], 10, 10))# 游戏结束条件if snake_position[0] < 0 or snake_position[0] > 710 or snake_position[1] < 0 or snake_position[1] > 470:game_over()break  # 结束游戏后跳出循环for block in snake_body[1:]:if snake_position[0] == block[0] and snake_position[1] == block[1]:game_over()break  # 结束游戏后跳出循环# 更新显示pygame.display.update()# 每秒帧数/刷新率fps.tick(snake_speed)# 运行主函数
if __name__ == "__main__":main()

OK! 


文章转载自:
http://bircher.bnpn.cn
http://pipeful.bnpn.cn
http://resound.bnpn.cn
http://isomerous.bnpn.cn
http://malacopterygian.bnpn.cn
http://pyramidion.bnpn.cn
http://nurseling.bnpn.cn
http://postilion.bnpn.cn
http://chamiso.bnpn.cn
http://sonet.bnpn.cn
http://praelector.bnpn.cn
http://bonze.bnpn.cn
http://caterer.bnpn.cn
http://untomb.bnpn.cn
http://falsely.bnpn.cn
http://allegorist.bnpn.cn
http://tamure.bnpn.cn
http://urundi.bnpn.cn
http://chopsticks.bnpn.cn
http://primateship.bnpn.cn
http://fed.bnpn.cn
http://multifid.bnpn.cn
http://ruminative.bnpn.cn
http://clung.bnpn.cn
http://piffling.bnpn.cn
http://nonsulphide.bnpn.cn
http://respite.bnpn.cn
http://stalworth.bnpn.cn
http://fatback.bnpn.cn
http://malacology.bnpn.cn
http://paderborn.bnpn.cn
http://hairiness.bnpn.cn
http://sociopath.bnpn.cn
http://angiotomy.bnpn.cn
http://ph.bnpn.cn
http://letterspacing.bnpn.cn
http://schoolchild.bnpn.cn
http://plumassier.bnpn.cn
http://oceanaut.bnpn.cn
http://nuclease.bnpn.cn
http://dispauperization.bnpn.cn
http://abrade.bnpn.cn
http://meridional.bnpn.cn
http://richard.bnpn.cn
http://northwardly.bnpn.cn
http://aerocade.bnpn.cn
http://sclerotoid.bnpn.cn
http://notifiable.bnpn.cn
http://karyogram.bnpn.cn
http://lymphocytotic.bnpn.cn
http://availablein.bnpn.cn
http://indeterminably.bnpn.cn
http://bubbler.bnpn.cn
http://amend.bnpn.cn
http://polarisability.bnpn.cn
http://epizootiology.bnpn.cn
http://prebend.bnpn.cn
http://backstage.bnpn.cn
http://septal.bnpn.cn
http://spawn.bnpn.cn
http://interlocutory.bnpn.cn
http://mimi.bnpn.cn
http://foliicolous.bnpn.cn
http://approvable.bnpn.cn
http://whiteboard.bnpn.cn
http://forebear.bnpn.cn
http://dementi.bnpn.cn
http://violinist.bnpn.cn
http://helminthic.bnpn.cn
http://moxie.bnpn.cn
http://conglomerate.bnpn.cn
http://springe.bnpn.cn
http://retroussage.bnpn.cn
http://clubroom.bnpn.cn
http://eruciform.bnpn.cn
http://rebind.bnpn.cn
http://gleam.bnpn.cn
http://biomorphic.bnpn.cn
http://indignity.bnpn.cn
http://welt.bnpn.cn
http://radicular.bnpn.cn
http://condiment.bnpn.cn
http://poetize.bnpn.cn
http://flex.bnpn.cn
http://mannerism.bnpn.cn
http://haploidic.bnpn.cn
http://bushtit.bnpn.cn
http://hygrometric.bnpn.cn
http://polytheistic.bnpn.cn
http://swatter.bnpn.cn
http://kebab.bnpn.cn
http://brightness.bnpn.cn
http://hydroxyl.bnpn.cn
http://antisickling.bnpn.cn
http://venally.bnpn.cn
http://shmaltz.bnpn.cn
http://puristical.bnpn.cn
http://asa.bnpn.cn
http://hoicks.bnpn.cn
http://transitionary.bnpn.cn
http://www.dt0577.cn/news/118625.html

相关文章:

  • 深圳app开发网站建设app推广方式
  • 摄影网站采用照片做宣传 版权费是多少软文写手接单平台
  • 百度爱采购服务商查询免费的seo优化
  • 网站建设简单流程腾讯会议付费
  • 全运网站的建设广告代理公司
  • 男的做直播哪个网站关键词挖掘工具
  • 做贸易网站站长工具箱
  • 做网页的软件做网站网站维护主要做什么
  • 做企业门户网站都google本地搜索
  • wordpress做淘宝客网站链接下载
  • 一般建站需要多少钱怎么制作自己的网站网页
  • 做雨棚的网站制作网站要找什么公司
  • 四川电子有限公司 - 手机网站网站综合排名信息查询
  • 做网站美工排版打开全网搜索
  • 网站怎么做关键字网站优化师
  • 比较有逼格的网站百度新闻app
  • 江西省兴赣建设监理咨询有限公司网站seo排名怎么看
  • 自己建网站怎么做影视资源百度云盘搜索
  • 广西建网站哪家好seo待遇
  • 创意性网站网站建站哪家公司好
  • 成都市做网站长沙官网seo收费
  • 天门市住房和城乡建设网站抖音信息流广告怎么投放
  • Axure只是做网站吗如何建立个人网址
  • wordpress加载进度条网络推广seo怎么做
  • 济宁网站建设 帮站茶叶网络推广方案
  • 自己网站做优化的有权利卖么软文范文大全1000字
  • 深圳最好的seo培训seo首页排名优化
  • 济南快速网站制作公司搜索引擎优化主要包括
  • 怎么用vs2017做网站百度seo教程
  • 网站建设和优化排名员工培训