您好,欢迎来到飒榕旅游知识分享网。
搜索
您的当前位置:首页Python语言程序设计-课后练习-第5周

Python语言程序设计-课后练习-第5周

来源:飒榕旅游知识分享网
 

 

中国大学MOOC课程 

《Python语言程序设计》 

课后练习(第5周) 

 

 

北京理工大学 Python语言教学团队 

 

第 1 页/共 8 页

  

【说明】 

本文是中国大学MOOC课程《Python语言程序设计》第5周的课后练习,预估学习完成时间约50分钟。

本周课后练习内容包括1道编程题,主要辅助同学通过使用Python的turtle库理解函数的使用。

对于尚未安装Python运行环境的同学,请根据第1周课程内容介绍的步骤安装Python 3.5.1或者Python 3.5.2版本解释器,如果操作系统兼容性有问题,可以安装Python 3.4版本解释器。

第 2 页/共 8 页

【课后练习】 

1. Python函数库(学习资料)

turtle是Python的内置图形化模块。Python 3系列版本安装目录的Lib文件夹下可以找到turtle.py文件。因为turtle绘制图形的命令简单且直观。更多信息请查阅turtle库官方文档。

https://docs.python.org/3/library/turtle.html 引入turtle库可以采用如下两种方式。

>>>import turtle #或者

>>>from turtle import * #下文中提到的“第二种方式”

可以将turtle库理解为有一系列函数组成,这些函数如表1-3所示,调用函数则调用相关功能。这里采用第二种方式引入turtle库。

可以turtle库使用画笔pen绘制图形,表1给出了控制画笔绘制状态的函数。

表1:turtle库的画笔绘制状态函数(共3个) 

函数

描述

pendown() penup() pensize(width)

放下画笔

提起画笔,与pendown()配对使用 设置画笔线条的粗细为指定大小

turtle以小海龟爬行角度来绘制曲线,小海龟即画笔,表2给出了控制turtle画笔运动的函数。

第 3 页/共 8 页

表2:turtle库的画笔运动的函数(共13个) 

函数

描述

forward() backward() right(angle) left(angle) goto(x,y) setx( ) sety( ) setheading(angle)

home() circle(step) dot(r,color) undo() speed()

沿着当前方向前进指定距离 沿着当前相反方向后退指定距离 向右旋转angle角度 向左旋转angle角度 移动到绝对坐标(x,y)处 将当前x轴移动到指定位置 将当前y轴移动到指定位置 设置当前朝向为angle角度

设置当前画笔位置为原点,朝向东。

绘制一个指定半径,角度、以及绘制步骤step的圆 绘制一个指定半径r和颜色color的圆点 撤销画笔最后一步动作

设置画笔的绘制速度,参数为0-10之间

表3列出了与画笔颜色和字体相关的函数。

表3: turtle库的控制画笔颜色和字体的函数(共11个) 

函数

描述

color() begin_fill() end_fill() filling() clear() reset() screensize() hideturtle() showturtle() isvisible() write(str,font=None)

设置画笔的颜色

填充图形前,调用该方法 填充图形结束

返回填充的状态,True为填充,False为未填充 清空当前窗口,但不改变当前画笔的位置 清空当前窗口,并重置位置等状态为默认值 设置画布的长和宽 隐藏画笔的turtle形状 显示画笔的turtle形状 如果turtle可见,则返回True 输出font字体的字符串

第 4 页/共 8 页

2. 七段数码管绘制(课后练习)

这是即将在2016年12月出版的《Python语言程序设计基础(第2版)》(嵩天、礼欣、黄天羽,高等教育出版社)包含的一个实例,该书以全新的视角看待Python语言,全书给出了25个有趣且有用的实例,将帮助读者全方位理解、学习并掌握Python语言。

数码管是一种价格便宜、使用简单的发光电子器件,广泛应用在价格较低的电子类产品中,其中,七段数码管最为常用。七段数码管(seven-segment indicator)由7段数码管拼接而成,每段有亮或不亮两种情况,改进型的七段数码管还包括一个小数点位置,如图1所示。

图 1:七段数码管的结构图

七段数码管能形成27=128种不同状态,其中部分状态能够显示易于人们理解的数字或字母含义,因此被广泛使用。图2给出了十六进制中16个字符的七段数码管表示。

第 5 页/共 8 页

图 2:十六进制中16个字符的七段数码管表示

请采用turtle库并使用函数封装绘制七段数码管,显示当前系统日期和时间。

该问题的IPO描述如下: 输入:当前日期的数字形式

处理:根据每个数字绘制七段数码管表示 输出:绘制当前日期的七段数码管表示

程序的预期运行效果如图3和图4所示,与两个效果中任何一个相似均可。

图 3:程序运行效果1

第 6 页/共 8 页

图 4:程序运行效果2

(上述内容仅供个人学习使用,禁止转载)

第 7 页/共 8 页

  

 

 

 

函数是代码的一种抽象 

(程序代码还有哪些抽象?) 

第 8 页/共 8 页

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- sarr.cn 版权所有 赣ICP备2024042794号-1

违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务