内容正文:
4.4综合问题的解决
教学目标:
1.学会分析任务,描述需求分析,知道需要解决的关键问题
2.了解面向对象的编程思想
3.体验软件开发的基本流程
教学重点
熟悉应用程序开发流程、pygame模块的使用
教学难点
理解、使用函数实现功能模块
教学过程
游戏引入
接福游戏:打开接福程序,实现通过单击鼠标,去接屏幕上不断出现的福字,并根据成功接到福字的次数记录分值。
下发程序,学生运行并体验,并写出这款游戏的功能。
(截取界面)
一、需求分析:
确定软件系统的功能。通俗地讲就是确定需要计算机做什么,想达到什么样的效果,只有确定了这些需求后,才能够分析和寻求系统的解决方法。
综合考虑这款游戏:
需要导入的模块有pygame、random、sys。其中,pygame模块提供了图像、声音等函数;random模块用于产生随机数;sys模块包含了跟Python环境相关的函数。
1、pygame模块:
它是一个专门用来开发游戏的模块,可以包含图像、声音等。它的相关内容主要有:
模块
功能
Pygame.display
访问显示设备
Pygame.event
管理事件
Pygame.font
使用字体
Pygame.image
加载和存储图片
(1)显示一个窗口
import pygame #导入模块
pygame.init() #pygame模块初始化
#创建一个窗口screen,大小为800*600
screen=pygame.display.set_mode([800,600])
(2)显示一个有背景色的窗口
screen.fill((255,255,0)) #窗口填充黄色*[来源:学科网ZXXK]
pygame.display.update() #窗口刷新
(3)显示一个有背景图片的窗口
用下面两条语句替换(2)代码段中带“*”号的语句
back=pygame.image.load('bj.jpg') #加载背景图像
screen.blit(back,[0,0]) #将背景图画在窗口
二、设计流程
通常情况下,游戏的基本结构如图所示:
游戏状态可以理解为程序中的变量。随着鼠标单击,游戏中的分数需要更新,这些状态随着鼠标单击或键盘输入等事件的发生而改变。
随着游戏状态更新或游戏场景变化,屏幕上显示的内容也会相应地发生改变。
本案例中,