Python舍入运算与数字处理-《Python Cookbook》摘录

需积分: 49 20 下载量 95 浏览量 更新于2024-08-08 收藏 2.01MB PDF 举报
"《Python Cookbook》第三版,由熊能翻译,发布于Dec09,2017,涵盖数据结构、字符串、数字日期和时间等多个领域的Python编程技巧。本书旨在提供实用的代码示例来解决常见的编程问题。" 在数字的四舍五入这一部分,我们关注的是如何在Python中对浮点数进行精确的舍入操作。Python提供了内置的`round()`函数,它允许我们对数字进行指定精度的四舍五入。例如,`round(1.23, 1)`会将数字1.23四舍五入到小数点后一位,结果为1.2;同样,`round(1.27, 1)`四舍五入后变为1.3,而`round(-1.27, 1)`则会得到-1.3。 `round()`函数的一个独特之处在于,当数值位于两个边界之间时(如1.5或2.5),它会选择更接近的偶数进行舍入。例如,`round(1.5)`和`round(2.5)`都会返回2。这是为了遵循“银行家舍入”规则,确保舍入误差的平均分布。 此外,`round()`函数的第二个参数`ndigits`可以是负数,这意味着我们可以对整数部分进行舍入。例如,`round(1627731, -1)`返回1627730,`round(1627731, -2)`则得到1627700,进一步将`ndigits`设为-3,则结果为1628000。这种操作对于处理较大数字的近似值非常有用。 然而,需要注意的是,四舍五入与格式化输出是不同的概念。如果只是为了输出特定宽度的数字,可以借助格式化字符串来完成,而不必使用`round()`函数。例如,`"{:.2f}".format(1.2345)`会直接输出保留两位小数的1.23。 在《Python Cookbook》中,除了四舍五入之外,还有许多关于数据结构、算法、字符串、文本处理、数字和日期时间的实用技巧。例如,1.11节介绍的命名切片可以方便地引用序列的子集,而2.15节讲解的字符串格式化可以以指定的列宽展示文本,2.18节则展示了如何映射名称到序列元素,这些内容对于提高Python编程效率和代码可读性都有极大的帮助。 这本书提供了一系列实用的Python编程技巧,涵盖了从基本操作到高级应用的广泛主题,是Python程序员的宝贵参考资料。