IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> Python知识库 -> 初始pygame游戏框架 -> 正文阅读

[Python知识库]初始pygame游戏框架

图书参考python编程入门指南

一.安装pygame
打开cmd,输入 pip install pygame

二.新建一个python脚本文件
1.导入sys,pygame库
2.先建立一个游戏窗口
代码

import sys
import pygame

pygame.init()#初始化
size=width,height=500,400#设置窗口大小(宽500,高400)
screen=pygame.display.set_mode(size)#显示窗口


执行结果
在这里插入图片描述
这时你想按叉是按不动的,除非你把程序给停掉
3.单击关闭窗口
代码

import sys
import pygame

pygame.init()#初始化
size=width,height=500,400#设置窗口大小(宽500,高400)
screen=pygame.display.set_mode(size)#显示窗口
while True:
    for event in pygame.event.get():#获取事件
        if event.type==pygame.QUIT:#单击关闭窗口
            pygame.quit()#退出pygame
            sys.exit()
            

4 添加一个小球图片
你在当前文件夹下保存你要使用的图片
在循环之前加入

ball=pygame.image.load('0.png')#加载你要使用的图片
ballrect=ball.get_rect()#图片的矩形区域

加入这两行代码后是不是很奇怪为什么没有图片呢,是因为我们还没有将图片加载到窗口上,也没有更新显示,需要添加到循环里

    screen.blit(ball,ballrect)#加载到窗口上
    pygame.display.flip()#更新显示  

加载后
在这里插入图片描述
5 移动
我们肯定想要让小球动起来,也希望不要移动的太快
代码
在这里插入图片描述
6 碰撞检测功能
上面的程序我们运行一下会发现它一会就不见了(其实是沿着那条线一直运动我们看不到了)
添加

    if ballrect.left<0 or ballrect.right>width:
        speed[0]=-speed[0]
    if ballrect.top<0 or ballrect.bottom>height:
        speed[1]=-speed[1]

我就截取了我实现的图
在这里插入图片描述
如果不想看到这样连续的球,可以填充颜色(但是我觉得上面那样还蛮有颜色的)

7.完整代码(一个小球)

import sys
import pygame

pygame.init()#初始化
size=width,height=500,400#设置窗口大小(宽500,高400)
screen=pygame.display.set_mode(size)#显示窗口
ball=pygame.image.load('0.png')#加载你要使用的图片
ballrect=ball.get_rect()#图片的矩形区域
speed=[5,5]#设置速度
clock=pygame.time.Clock()
color=(0,0,0)
while True:
    clock.tick(40)#每秒执行60次
    for event in pygame.event.get():#获取事件
        if event.type==pygame.QUIT:#单击关闭窗口
            pygame.quit()#退出pygame
            sys.exit()
    screen.fill(color)
    screen.blit(ball,ballrect)#加载到窗口上
    ballrect=ballrect.move(speed)#让矩形区域按照x轴的速度为5,y轴的速度为5移动
    if ballrect.left<0 or ballrect.right>width:
        speed[0]=-speed[0]
    if ballrect.top<0 or ballrect.bottom>height:
        speed[1]=-speed[1]
    
    pygame.display.flip()#更新显示  

代码很短,练练手吧


  Python知识库 最新文章
Python中String模块
【Python】 14-CVS文件操作
python的panda库读写文件
使用Nordic的nrf52840实现蓝牙DFU过程
【Python学习记录】numpy数组用法整理
Python学习笔记
python字符串和列表
python如何从txt文件中解析出有效的数据
Python编程从入门到实践自学/3.1-3.2
python变量
上一篇文章      下一篇文章      查看所有文章
加:2021-08-29 21:51:08  更:2021-08-29 21:51:21 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/15 12:55:47-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码