《与孩子一起学编程》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 strip lstrip rstrip使用方法
Sep 06 Python
python简单实现基数排序算法
May 16 Python
解决nohup重定向python输出到文件不成功的问题
May 11 Python
详解python tkinter教程-事件绑定
Mar 28 Python
Python 存储字符串时节省空间的方法
Apr 23 Python
Python 3.8新特征之asyncio REPL
May 28 Python
Pandas聚合运算和分组运算的实现示例
Oct 17 Python
Pytorch训练过程出现nan的解决方式
Jan 02 Python
Python基础之字符串常见操作经典实例详解
Feb 26 Python
python怎么对数字进行过滤
Jul 05 Python
python正则表达式re.search()的基本使用教程
May 21 Python
Python 中的Sympy详细使用
Aug 07 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
CodeIgniter配置之database.php用法实例分析
2016/01/20 PHP
phalcon框架使用指南
2016/02/23 PHP
visual studio code 调试php方法(图文详解)
2017/09/15 PHP
Laravel如何实现自动加载类
2019/10/14 PHP
js常用函数 不错
2006/09/08 Javascript
Discuz! 6.1_jQuery兼容问题
2008/09/23 Javascript
JS简单的轮播的图片滚动实例
2013/06/17 Javascript
Javascript中克隆一个数组的实现代码
2013/12/06 Javascript
javascript字母大小写转换的4个函数详解
2014/05/09 Javascript
JavaScript实现简单图片翻转的方法
2015/04/17 Javascript
js网页滚动条滚动事件实例分析
2015/05/05 Javascript
javascript时间戳和日期字符串相互转换代码(超简单)
2016/06/22 Javascript
javascript正则表达式中分组详解
2016/07/17 Javascript
JS双击变input框批量修改内容
2016/12/12 Javascript
15个非常实用的JavaScript代码片段
2016/12/18 Javascript
微信小程序 自定义消息提示框
2017/08/06 Javascript
vue template中slot-scope/scope的使用方法
2018/09/06 Javascript
微信{"errcode":48001,"errmsg":"api unauthorized, hints: [ req_id: 1QoCla0699ns81 ]"}
2018/10/12 Javascript
vue实现双向绑定和依赖收集遇到的坑
2018/11/29 Javascript
jQuery实现动态加载瀑布流
2020/09/01 jQuery
在vue中使用eslint,配合vscode的操作
2020/11/09 Javascript
Python  __getattr__与__setattr__使用方法
2008/09/06 Python
python翻译软件实现代码(使用google api完成)
2013/11/26 Python
Python采用Django开发自己的博客系统
2020/09/29 Python
Bootstrap 学习分享
2012/11/12 HTML / CSS
详解移动端HTML5页面端去掉input输入框的白色背景和边框(兼容Android和ios)
2016/12/15 HTML / CSS
南非最受欢迎的时尚品牌:MRP
2016/09/18 全球购物
DBA数据库管理员JAVA程序员架构师必看
2016/02/07 面试题
中专毕业自我鉴定
2013/10/16 职场文书
运动会邀请函范文
2014/02/06 职场文书
小学教师自我评价
2015/03/04 职场文书
我的中国梦主题班会
2015/08/14 职场文书
2016元旦主持人开场白
2015/12/03 职场文书
关于flex 上下文中自动 margin的问题(完整例子)
2021/05/20 HTML / CSS
Redis Cluster 字段模糊匹配及删除
2021/05/27 Redis
mysql字段为NULL索引是否会失效实例详解
2022/05/30 MySQL