首页 > 编程语言 >Python实验报告

Python实验报告

时间:2022-12-03 10:23:12浏览次数:37  
标签:窗口 ballrect Python pygame 实验报告 speed event Pygame

实验13:Pygame游戏编程

一、实验目的和要求

学会Pygame的基本应用

二、Pygame的优点及应用

   使用Python进行游戏开发的首选模块就是Pygame,专为电子游戏设计(包括图像、声音),创建在SDL基础上,允许实时电子游戏研发而不被低级语言(如汇编语言)束缚。基于这一设想,所有需要的游戏功能和理念(主要是图像方面)都完全简化为游戏逻辑本身,所有的资源结构都可以由高级语言(如Python)提供。

三、实验环境

1、安装Pygame:在桌面的搜索栏中输入“cmd”找到命令提示符,然后输入“pip install pygame”,然后按回车键,自行开始安装Pygame。如出现问题,会自动弹出还需安装的插件,或请上官网查询相关信息:https://www.pygame.org/wiki/GettingStarted

2、检查Pygame是否安装成功:在桌面的搜索栏中输入“IDLE”找到python代码实现界面,输入“import pygame\n pygame.ver”(\n为换行符,请按回车键),然后再按回车键:若显示版本信息,即为安装成功。

2、操作步骤如下:

 

 

 

 

四、实验过程

1、实例1:制作一个Pygame窗口

 

 1 # -*- coding:utf-8 -*-
 2 import pygame               
 3 import sys
 4 
 5 pygame.init()                         #初始化pygame
 6 size = width, height = 320,240      #设置窗口
 7 screen = pygame.display.set_mode(size)#显示窗口
 8 
 9 #执行死循环,确保窗口一直显示
10 while True:
11     #检查事件
12     for event in pygame.event.get():  #遍历所有事件
13         if event.type == pygame.QUIT: #如果单击关闭窗口,则退出
14             sys.exit()
15 
16 pygame.quit()                         #退出pygame

 

运行效果:(一直不知道哪里出了问题,窗口就是关不了)

 

2、制作一个跳跃的小球游戏

创建一个游戏窗口,然后再窗口内创建一个小球。以一定的速度移动小球,当小球碰到窗口的边缘时,小球弹回,继续移动。代码如下:

 

 1 import pygame                         #导入pygame模块
 2 import sys                            #导入sys模块
 3 
 4 pygame.init()                         #初始化pygame
 5 size = width,height = (1040,750)      #设置窗口 (根据自己的电脑显示器进行调整)
 6 screen = pygame.display.set_mode(size)#显示窗口
 7 color = (0,0,0)                       #设置颜色
 8 
 9 ball = pygame.image.load("ball.jpeg") #加载图片
10 ballrect = ball.get_rect()            #获取矩形区域
11 
12 speed = [1,1]                         #设置移动的x轴,y轴距离(数值越大越快)
13 while True:                           #执行死循环,确保窗口一直显示,并检查事件
14     for event in pygame.event.get():
15         if event.type == pygame.QUIT: #如果单击关闭窗口,则退出
16             sys.exit()
17 
18     ballrect = ballrect.move(speed)   #移动小球
19     if ballrect.left <0 or ballrect.right > width:
20         speed[0] = -speed[0]
21     if ballrect.top <0 or ballrect.bottom >height:
22         speed[1] = -speed[1]
23         
24     screen.fill(color)                #填充颜色
25     screen.blit(ball,ballrect)        #将图片画到窗口上
26     pygame.display.flip()             #更新全部显示
27 
28 pygame.quit()

 

运行效果:

 

标签:窗口,ballrect,Python,pygame,实验报告,speed,event,Pygame
From: https://www.cnblogs.com/Mandeluda/p/16947074.html

相关文章

  • Python笔记-多进程多线程
    日常运维中,经常需要并发来提升工作效率。Python提供了多线程和多进程两种方式。importtimeimportthreadingimportmultiprocessingdefprint_fun(num):print(time.str......
  • Python笔记-脚本参数传递
    编写Python脚本,经常需要从外部传递参数,此时需要用到getopt和sys。语法如下:getopt.getopt(args,shortopts,longopts=[])args参数列表shortopts短参数,如:-hlongopt......
  • Python笔记-Python2和Python3兼容
    Python2与Python3在很数据类型、语法上面都有很大区别。为保证编写的脚本在Python2和Python3下兼容,需要在代码中做版本判断。示例代码如下:importsyspversion=int(s......
  • Python笔记-从配置读取参数
    实用的脚步通常需要一些动态参数,如果参数太多,从命令行传递就太麻烦了。从配置文件读取,是比较实用的方法。以下示例为从test.cfg中读取参数,配置文件为json格式。配置文件......
  • Python 让图像变卡通图
    ✅作者简介:热爱科研的算法开发者,Python、Matlab项目可交流、沟通、学习。......
  • python解析yaml文件
    1、初始化yaml文件的目录def__init__(self):self.yaml_root_path='D:\\Code\\PythonProject\\UIAutoProject\\config\\yaml\\'2、读取yaml文件的方法defread_......
  • Python遍历某个文件夹下的所有文件夹,每个文件夹只保留最新7个文件
    importosroot=r"D:\_back"fordirpath,dirnames,filenamesinos.walk(root):fordirnameindirnames:_dir=os.path.join(dirpath,dirname)......
  • Python实验报告——第13章 Pygame游戏编程
    实验报告实例01:制作一个跳跃的小球游戏代码如下:importsysimportpygamepygame.init()size=width,height=640,480screem=pygame.display.set_mode(size)c......
  • python 高阶函数
    高阶函数(High-orderFunction)​ 数学概念y=f(g(x))​ 在数学和计算机科学中,高阶函数应当是至少满足下面一个条件的函数​ 接受一个或多个函数作为参数​ 输......
  • python 装饰器
    defadd(x,y):returnx+ydeflogger(fn):defwrapper(*args,**kwargs):print('调用前增强')ret=fn(*args,**kwargs)#参数解构......