《与孩子一起学编程》python自测题


Posted in Python onMay 27, 2018

测试题一、

1、 程序可以响应的两种事件分别是键盘事件和鼠标事件。

2、 处理事件的代码称为事件处理器

3、 Pygame使用KEYDOWN事件来检测按键是否按下。

4、 Pos属性会指出事件发生时鼠标所在的位置

5、 要为用户事件得到下一个可用的事件编号,可以使用pygame.NUMEVENTS。

6、 要创建一个定时器,可以使用pygame.time.set_timer()。

7、 要在Pygame窗口中显示文本,可以使用font对象。

8、 使用字体对象有3个步骤:

创建一个字体对象

渲染文本,创建一个表面

把这个表面块移到显示表面

动手试一试

1、 如果球没有碰到球拍的顶边,而是碰到了球拍的左右两边,为什么会有奇怪的表现?这是因为这里有一个碰撞,所以代码尝试让球的y方向 (让它向上而不是向下)。但是因为球 是从两边(左边或右边)过来的,即使在反向之后它仍会与球拍“碰撞”。下一次循环(一帧之后)时,它会再次反向,因此会再次向下,如此继续,要解决这个问题,有一种简单的方法:当球与球拍碰撞时总是将球设置为向“上”(y速度是一个负值)。这不能算是一种完美的解决办法,因为这意味着即使碰到球拍左右两边也会向上反弹---这可不太真实!不过这样能解决球在球拍两边来回反弹的问题,如果你想要一种更真实的解决方案,可能需要多写一些代码,也许要增加一些内容,在“反弹”之前检查球碰到了球拍的哪一边。

2、 我们已经给出了有关代码的一个例子,可以为程序增加随机性,见TIO_CH18_2.py。

测试题二、

1、 存储声音的文件类型包括波形文件(.wav)、MP3(.mp3)、Ogg Vorbis文件(.ogg)和Windows媒体音频文件(.wma)。

2、 Pygame.mixer模块用来播放音乐

3、 要用各个声音对象的set_volume()方法设置Pygame声音对象的音量。

4、 使用pygame.mixer.music.set_volume()设置背景音乐的音量。

5、 要让音乐淡出,可以使用pygame.mixer.music.fadeout()方法。要提供淡出时间(毫秒数,即千分之一秒)作为参数。例如pygame.mixer.music. fadeout(2000)会让声音在2秒内淡出。

动手试一试

我们已经在网站上提供了加入声音的猜数程序的代码,见TIO_CH19_1.py。

测试题三、

1、 GUl图形元素有3个名字,分别是控件、部件和组件。

2、 要进入一个菜单,与Alt同时按下的字母叫做热键。

3、 PythonCard资源文件要以rsrc.py结尾。

4、 使用PythonCard的GUI中可以包含以下组件类型:按钮、复选框、计量器、列表、单选钮组、滑动条、文本域、图像、静态文本以及很多其他组件。查看资源编辑器的Component菜单,可以看到全部组件类型。

5、 要让组件完成某项工作,需要一个事件处理器。

6、 在PythonCard菜单编辑器中要使用&(与字符)定义热键。

7、 PythonCard中微调框的内容总是一个整数。

动手试一试

1、 我们已经在网站上给出了使用PythonCard完成的猜数程序,见TIO_CH_1.py和TIO_CH20_1.rsrc.py。

2、 要解决这个微调框问题,需要在资源编辑器中选择微调组件。在属性编辑器中改变min和max属性,min属性应当取一个很小的值,比如-1000,max可以非常大,比如1000000.

Python 相关文章推荐
Python查询Mysql时返回字典结构的代码
Jun 18 Python
python如何让类支持比较运算
Mar 20 Python
pandas DataFrame实现几列数据合并成为新的一列方法
Jun 08 Python
Python 带有参数的装饰器实例代码详解
Dec 06 Python
Python删除n行后的其他行方法
Jan 28 Python
在Python中如何传递任意数量的实参的示例代码
Mar 21 Python
Python计算不规则图形面积算法实现解析
Nov 22 Python
Python基于yield遍历多个可迭代对象
Mar 12 Python
django filter过滤器实现显示某个类型指定字段不同值方式
Jul 16 Python
Python Selenium库的基本使用教程
Jan 04 Python
Python实现图片指定位置加图片水印(附Pyinstaller打包exe)
Mar 04 Python
基于Python实现股票收益率分析
Apr 02 Python
儿童python练习实例
May 27 #Python
django输出html内容的实例
May 27 #Python
Python中判断输入是否为数字的实现代码
May 26 #Python
用PyInstaller把Python代码打包成单个独立的exe可执行文件
May 26 #Python
使用PyInstaller将python转成可执行文件exe笔记
May 26 #Python
Python带动态参数功能的sqlite工具类
May 26 #Python
通过Py2exe将自己的python程序打包成.exe/.app的方法
May 26 #Python
You might like
Apache, PHP在Windows 9x/NT下的安装与配置 (二)
2006/10/09 PHP
PHP类继承 extends使用介绍
2014/01/14 PHP
PHP ignore_user_abort函数详细介绍和使用实例
2014/07/15 PHP
PHP十六进制颜色随机生成器功能示例
2017/07/24 PHP
tp5(thinkPHP5框架)使用DB实现批量删除功能示例
2019/05/28 PHP
JavaScript入门教程(10) 认识其他对象
2009/01/31 Javascript
validator验证控件使用代码
2010/11/23 Javascript
node.js操作mongoDB数据库示例分享
2014/11/26 Javascript
Node.js实现批量去除BOM文件头
2014/12/20 Javascript
JavaScript中return false的用法
2015/03/12 Javascript
js鼠标点击图片切换效果代码分享
2015/08/26 Javascript
js验证框架之RealyEasy验证详解
2016/06/08 Javascript
js中通过getElementsByName访问name集合对象的方法
2016/10/31 Javascript
深入理解jQuery()方法的构建原理
2016/12/05 Javascript
老生常谈js-react组件生命周期
2017/05/02 Javascript
利用types增强vscode中js代码提示功能详解
2017/07/07 Javascript
详解用node搭建简单的静态资源管理器
2017/08/09 Javascript
Nodejs实现多文件夹文件同步
2018/10/17 NodeJs
Vue常用的几个指令附完整案例
2018/11/06 Javascript
angular6根据environments配置文件更改开发所需要的环境的方法
2019/03/06 Javascript
微信小程序如何实现全局重新加载
2019/06/05 Javascript
js数组相减简单示例【删除a数组所有与b数组相同元素】
2020/03/04 Javascript
bootstrap-table后端分页功能完整实例
2020/06/01 Javascript
[01:07:19]2018DOTA2亚洲邀请赛 4.5 淘汰赛 Mineski vs VG 第一场
2018/04/06 DOTA
基于MTCNN/TensorFlow实现人脸检测
2018/05/24 Python
详解python中的time和datetime的常用方法
2019/07/08 Python
python fuzzywuzzy模块模糊字符串匹配详细用法
2019/08/29 Python
opencv python图像梯度实例详解
2020/02/04 Python
pycharm中如何自定义设置通过“ctrl+滚轮”进行放大和缩小实现方法
2020/09/16 Python
CSS3 media queries + jQuery实现响应式导航
2016/09/30 HTML / CSS
美体小铺美国官网:The Body Shop美国
2017/11/10 全球购物
英国的一家创新礼品和小工具零售商:Menkind
2019/08/24 全球购物
小学教师党员承诺书
2015/04/27 职场文书
2016廉洁教育心得体会
2016/01/20 职场文书
JavaWeb 入门篇:创建Web项目,Idea配置tomcat
2021/07/16 Java/Android
springboot为异步任务规划自定义线程池的实现
2022/06/14 Java/Android