建设生鲜网站价格表新网站该如何做网站优化呢

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

建设生鲜网站价格表,新网站该如何做网站优化呢,免费服务器使用推荐,运营推广的方式和渠道有哪些学习 Python 之 Pygame 开发魂斗罗#xff08;一#xff09;Pygame回忆Pygame1. 使用pygame创建窗口2. 设置窗口背景颜色3. 获取窗口中的事件4. 在窗口中展示图片(1). pygame中的直角坐标系(2). 展示图片(3). 给部分区域设置颜色5. 在窗口中显示文字6. 播放音乐7. 图片翻转与… 学习 Python 之 Pygame 开发魂斗罗一Pygame回忆Pygame1. 使用pygame创建窗口2. 设置窗口背景颜色3. 获取窗口中的事件4. 在窗口中展示图片(1). pygame中的直角坐标系(2). 展示图片(3). 给部分区域设置颜色5. 在窗口中显示文字6. 播放音乐7. 图片翻转与缩放8. 设置游戏帧率Pygame 回忆Pygame 在之前的学习中咱们使用Pygame开发出了坦克大战这次再使用Pygame开发魂斗罗如果有想学习开发坦克大战的小伙伴可以看看下面的博客 学习 Python 之 Pygame 开坦克大战一 学习 Python 之 Pygame 开坦克大战二 学习 Python 之 Pygame 开坦克大战三 学习 Python 之 Pygame 开坦克大战四 学习 Python 之 Pygame 开坦克大战五 下面再回顾一下Pygame创建窗口、播放音乐等操作 Pygame的官方文档 函数名称作用返回值pygame.display.init()初始化展示模块Nonepygame.display.set_mode(size (0, 0))初始化窗口窗口就是一个Surface对象Surfacepygame.display.set_caption(title, icontitle None)设置窗口标题和图标Nonepygame.Surface.fill(color, rect None)用纯色填充表面Surface对象Nonepygame.Color(b, g, r)创建用于颜色表示的Pygame对象Colorpygame.display.update()更新屏幕Nonepygame.event.get()获取事件队列Eventlistpygame.image.load(filename)从文件加载图片图片跟窗口一样也是Surface对象Surfacepygame.Surface.get_rect()获取Surface对象的rect属性Rectpygame.Surface.blit(source, dest, area None)在一个Surface对象上显示另一个Surface对象Rectpygame.font.init()初始化字体模块Nonepygame.font.SysFont(name, size, bold False, italic False)从系统字体创建字体对象Fontpygame.font.render(text, antialias, color, background None)创建一个带有指定字体的Surface对象Surfacepygame.mixer.init()初始化混合器模块Nonepygame.mixer.Sound(filename)从文件创建声音对象Soundpygame.mixer.Sound.play(loops 0, maxtime 0)播放音乐loops参数控制播放次数播放次数为loops 1次。默认为0表示声音不会重复只播放一次。如果loops为-1声音将无限循环Channelpygame.mixer.Sound.stop()声音停止播放Nonepygame.mixer.Sound.set_volume(value)设置音量Nonepygame.transform.flip(surface, flip_x, flip_y)图片翻转Surfacepygame.transform.scale(surface, size)将图片Surface对象调整为大小为width, height的新图片Surfacepygame.time.Clock()用于帮助跟踪时间以及控制游戏帧速率的类Clockpygame.time.Clock.tick(framerate 0)设置游戏运行的帧率millisecondspygame.time.Clockget_fps()计算游戏的帧速率(以帧每秒为单位)float

  1. 使用pygame创建窗口 import pygame# 初始化展示模块 pygame.display.init()

    设置窗口大小

    SCREEN_WIDTH 800 SCREEN_HEIGHT 600 size (SCREEN_WIDTH, SCREEN_HEIGHT)

    初始化窗口

    window pygame.display.set_mode(size)

    设置窗口标题

    pygame.display.set_caption(Contra)创建结果 窗口一闪而过

  2. 设置窗口背景颜色

    设置窗口背景颜色

    blue 255 green 0 red 255 BACKGROUND_COLOR pygame.Color(blue, green, red) window.fill(BACKGROUND_COLOR)# 更新窗口 pygame.display.update()完整代码 import pygame import time# 初始化展示模块 pygame.display.init()

    设置窗口大小

    SCREEN_WIDTH 1100 SCREEN_HEIGHT 600 size (SCREEN_WIDTH, SCREEN_HEIGHT)

    初始化窗口

    window pygame.display.set_mode(size)

    设置窗口标题

    pygame.display.set_caption(Tank Battle)# 设置窗口背景颜色 blue 255 green 0 red 255 BACKGROUND_COLOR pygame.Color(blue, green, red) window.fill(BACKGROUND_COLOR)# 更新窗口 pygame.display.update()# 让程序休眠200秒方便观察窗口的变化 time.sleep(200)不要忘记更新窗口否则不会显示颜色的 实际上颜色可以不用使用 pygame.Color(blue, green, red) 来创建直接使用元组的方式 WHITE (255, 255, 255)这样的方式传入 window.fill(WHITE)也是可以生效的为了方便直接用红绿蓝序列即可

  3. 获取窗口中的事件 def getWindowEvent():for event in pygame.event.get():# 点击窗口右上角的关闭触发的事件if event.type pygame.QUIT:sys.exit()# 鼠标按下事件elif event.type pygame.MOUSEBUTTONDOWN:x, y event.posprint(鼠标按下, 鼠标位置({x}, {y}).format(x x, y y))# 鼠标抬起事件elif event.type pygame.MOUSEBUTTONUP:print(鼠标抬起)# 键盘按键按下事件elif event.type pygame.KEYDOWN:print(键盘按键按下)# 具体键盘事件触发if event.key pygame.K_j:print(按下键盘 j 键)# 键盘按键抬起事件elif event.type pygame.KEYUP:print(键盘按键抬起)完整代码 import pygame import sysdef getWindowEvent():for event in pygame.event.get():# 点击窗口右上角的关闭触发的事件if event.type pygame.QUIT:sys.exit()# 鼠标按下事件elif event.type pygame.MOUSEBUTTONDOWN:x, y event.posprint(鼠标按下, 鼠标位置({x}, {y}).format(x x, y y))# 鼠标抬起事件elif event.type pygame.MOUSEBUTTONUP:print(鼠标抬起)# 键盘按键按下事件elif event.type pygame.KEYDOWN:print(键盘按键按下)# 具体键盘事件触发if event.key pygame.K_j:print(按下键盘 j 键)# 键盘按键抬起事件elif event.type pygame.KEYUP:print(键盘按键抬起)# 初始化展示模块 pygame.display.init()

    设置窗口大小

    SCREEN_WIDTH 1100 SCREEN_HEIGHT 600 size (SCREEN_WIDTH, SCREEN_HEIGHT)

    初始化窗口

    window pygame.display.set_mode(size)

    设置窗口标题

    pygame.display.set_caption(Contra)# 设置窗口背景颜色 blue 255 green 0 red 255 BACKGROUND_COLOR pygame.Color(blue, green, red) window.fill(BACKGROUND_COLOR)while 1:# 获取键盘事件getWindowEvent()# 更新窗口pygame.display.update() 运行后按下鼠标左键键盘s键键盘w键 结果 鼠标按下, 鼠标位置(355, 170) 鼠标抬起 键盘按键按下 键盘按键抬起 键盘按键按下 W按键按下 W按键按下 W按键按下 W按键按下 W按键按下 W按键按下 W按键按下 W按键按下 W按键按下 W按键按下 W按键按下 W按键按下 W按键按下 W按键按下 W按键按下 W按键按下 W按键按下 W按键按下 W按键按下 W按键按下 W按键按下 W按键按下 W按键按下 W按键按下 W按键按下 W按键按下 W按键按下 W按键按下 W按键按下 W按键按下 W按键按下 W按键按下 W按键按下 W按键按下 W按键按下 W按键按下 W按键按下 W按键按下 W按键按下 W按键按下 W按键按下 W按键按下 W按键按下 W按键按下 W按键按下 W按键按下 W按键按下 W按键按下 W按键按下 W按键按下 W按键按下 W按键按下 W按键按下 W按键按下 W按键按下 W按键按下 W按键按下 W按键按下 W按键按下 W按键按下 W按键按下 W按键按下 W按键按下 W按键按下 W按键按下 W按键按下 W按键按下 W按键按下 W按键按下 W按键按下 W按键按下 W按键按下 W按键按下 W按键按下 W按键按下 W按键按下 W按键按下 W按键按下 W按键按下 W按键按下 W按键按下 W按键按下 W按键按下 W按键按下 W按键按下 W按键按下 键盘按键抬起 系统的事件都具有一组成员属性。下面是事件类型及其特定属性的列表图图片来源链接 在 学习 Python 之 Pygame 开坦克大战一中我们使用的是另一种形式这两种差别不大大家仔细对比一下 在上面的结果中“W按键按下”打印的次数与窗口的帧率有关系在下面我们会说到

  4. 在窗口中展示图片 (1). pygame中的直角坐标系 (2). 展示图片 import pygame# 初始化展示模块 pygame.display.init()

    设置窗口大小

    SCREEN_WIDTH 1100 SCREEN_HEIGHT 600 size (SCREEN_WIDTH, SCREEN_HEIGHT)

    初始化窗口

    window pygame.display.set_mode(size)

    设置窗口标题

    pygame.display.set_caption(Contra)# 设置图片路径 path ../Image/Map/第一关BG.png

    加载图片

    image pygame.image.load(path)

    获取直角坐标

    rect image.get_rect()

    设置图片的位置在(0,0)处加载图片

    rect.left 0 rect.top 0

    在窗口显示

    window.blit(image, rect)while 1:# 更新窗口pygame.display.update()(3). 给部分区域设置颜色 import pygame# 初始化展示模块 pygame.display.init()

    设置窗口大小

    SCREEN_WIDTH 800 SCREEN_HEIGHT 600 size (SCREEN_WIDTH, SCREEN_HEIGHT)

    初始化窗口

    window pygame.display.set_mode(size)

    设置窗口标题

    pygame.display.set_caption(Contra)# 设置窗口背景颜色 blue 255 green 0 red 255 BACKGROUND_COLOR pygame.Color(blue, green, red) window.fill(BACKGROUND_COLOR)# 给部分区域设置颜色 rect pygame.Rect(200, 200, 200, 300) REGION_COLOR pygame.Color(50, 50, 150) window.fill(REGION_COLOR, rect)while 1:# 更新窗口pygame.display.update() 5. 在窗口中显示文字 import pygame# 初始化展示模块 pygame.display.init()

    设置窗口大小

    SCREEN_WIDTH 800 SCREEN_HEIGHT 600 size (SCREEN_WIDTH, SCREEN_HEIGHT)

    初始化窗口

    window pygame.display.set_mode(size)

    设置窗口标题

    pygame.display.set_caption(Contra)# 设置文字内容 text Hello Pygame# 初始化字体 pygame.font.init()

    设置文字字体和大小

    fontSize 16 font pygame.font.SysFont(georgia, fontSize)

    加载文字并设置颜色

    fontColor pygame.Color(255, 255, 255) fontObject font.render(text, True, fontColor)

    设置展示位置

    position (50, 50)

    展示文字

    window.blit(fontObject, position)while 1:# 更新窗口pygame.display.update()运行结果 6. 播放音乐 import pygame# 初始化混合器模块 pygame.mixer.init()

    加载音乐

    sound pygame.mixer.Sound(./star.wav)

    播放音乐

    sound.play()7. 图片翻转与缩放 import time import pygamedef enlarge(image: pygame.Surface, scale):缩放图片:param image: 要缩放的图片:param scale: 图片缩放尺寸:return: 缩放后的图片# 获取图片大小rect image.get_rect()# 长宽扩大 scale 倍largeSize (int(rect.width * scale), int(rect.height * scale))# 对图片缩放large pygame.transform.scale(origin, largeSize)return largedef flip(image: pygame.Surface, h, v):图片翻转:param image: 要翻转的图片:param h: 是否水平翻转:param v: 是否上下翻转:return: 翻转后的图片return pygame.transform.flip(image, h, v)# 初始化展示模块 pygame.display.init()

    设置窗口大小

    SCREEN_WIDTH 800 SCREEN_HEIGHT 600 size (SCREEN_WIDTH, SCREEN_HEIGHT)

    初始化窗口

    window pygame.display.set_mode(size)

    设置窗口标题

    pygame.display.set_caption(Contra)# 加载原图 origin pygame.image.load(../Image/Map/第一关BG.png)

    显示原图

    rect origin.get_rect() rect.x 0 rect.y 0 window.blit(origin, rect)# 更新窗口 pygame.display.update() time.sleep(2)# 图片缩放2.5倍 large enlarge(origin, 2.5)

    显示原图

    rect large.get_rect() rect.x 0 rect.y 0 window.blit(large, rect)# 更新窗口 pygame.display.update() time.sleep(2)# 图片翻转 img flip(large, True, False)

    显示原图

    rect img.get_rect() rect.x 0 rect.y 0 window.blit(img, rect)# 更新窗口 pygame.display.update() time.sleep(2) 先看看原图
    放大2.5倍的图 翻转图片这里是左右翻转图片的最后是BOSS关翻转过来就先显示BOSS关卡啦 水平翻转大家可以自己试一试 自己封装的图片缩放函数 def enlarge(image: pygame.Surface, scale):缩放图片:param image: 要缩放的图片:param scale: 图片缩放尺寸:return: 缩放后的图片# 获取图片大小rect image.get_rect()# 长宽扩大 scale 倍largeSize (int(rect.width * scale), int(rect.height * scale))# 对图片缩放large pygame.transform.scale(origin, largeSize)return large自己封装的图片翻转函数 def flip(image: pygame.Surface, h, v):图片翻转:param image: 要翻转的图片:param h: 是否水平翻转:param v: 是否上下翻转:return: 翻转后的图片return pygame.transform.flip(image, h, v)8. 设置游戏帧率 创建一个对象来帮助跟踪时间并设置帧率 clock pygame.time.Clock() fps 60在循环中设置帧率并把帧率显示在标题上 while 1:# 设置帧率clock.tick(fps)r clock.get_fps()caption Contra - {:.2f}.format®pygame.display.set_caption(caption)# 更新窗口pygame.display.update()完整代码 import pygame# 初始化展示模块 pygame.display.init()# 设置窗口大小 SCREEN_WIDTH 800 SCREEN_HEIGHT 600 size (SCREEN_WIDTH, SCREEN_HEIGHT)

    初始化窗口

    window pygame.display.set_mode(size)

    设置窗口标题

    pygame.display.set_caption(Contra)clock pygame.time.Clock() fps 60while 1:# 设置帧率clock.tick(fps)r clock.get_fps()caption Contra - {:.2f}.format®pygame.display.set_caption(caption)# 更新窗口pygame.display.update() 看看结果可以看到窗口上有帧率显示了60表示 1秒窗口要刷新60次