APP下载

探索计算之美

2021-10-30王新勇

中国信息技术教育 2021年20期

王新勇

高中信息技术新教材注重理论与实践的结合以及学科本身的科学性和理论性,并且以实现信息意识、计算思维、数字化学习与创新以及信息社会责任四个核心素养的提升为目标。笔者以Python的round()函数作为切入点,对数据与计算的关系和深层链接进行探究。文章中涉及Python的语法规则均以Python3为基础,代码运行环境为python3.8.5版本。

● 发现问题

1.round()函数的概念

round()函数为Python内置(built-in)的函数,Python安装完成后即具有该函数的功能,不需要再引入额外的模块。round()函数提供了低精度的四舍五入的功能,需要重点理解低精度以及四舍五入的原则。

2.round()函数的参数

round()函数提供了两个参数,round(x, n),其中参数x可以是整型(int)、实型(float)或布尔型(bool)的数值,不能是字符串、列表或字典等数据结构类型的值。参数n是一个整数值,为可选参数,用来表示小数点后保留的位数,如round(1.233,2),值为1.23,即小数点后保留2位。参数n可以为负数,当n为负数时,相当于对整数的第n位(-1,对应个位)进行四舍五入,如round(1123,-2),值为1100,如图1所示。n为负整数的情况,非重点探究内容,不做讨论。

3.round()函数取整实验

基于Python的IDLE交互式Shell工具,进行round()函数的取整实验,如图2所示。

对于round(1.3)和round(1.7),是符合四舍五入的原则的。对于round(1.5)和round(2.5),结果为什么都是2?round(3.5)和round(4.5)结果为什么都是4?这是需要思考和探究的第一个问题。

● 追本溯源

1.Python版本差异

如下页图3所示,round()函数在Python3.0版本相比Python2的变化,主要内容包括如下几点:①round()函数从Python3.0开始,对于0.5、1.5、2.5这类小数部分值为0.5的float类型数值,取整时是舍入到偶数的一边。例如,round(2.5),值为2;round(1.5),值也是2。以1.5為例,由于1.5与1和2的距离是一样的,都是0.5的差值,因此,在Python3.0版本开始遵循亲偶数边取整的原则,我们称之为亲偶性。……

登录APP查看全文