有返回值与无返回值函数的理解

需积分: 50 31 下载量 166 浏览量 更新于2024-08-07 收藏 2.71MB PDF 举报
"有返回值函数和无返回值函数-hard_real-time_computing_systems" 在编程中,函数是实现特定任务的基本单位。根据其功能,函数可以分为有返回值函数和无返回值函数。 有返回值函数,也称为富有函数(fruitful functions),如数学函数,会在执行后返回一个结果。例如,`math.cos()` 和 `math.sqrt()` 是 Python 中的两个有返回值函数,它们分别计算余弦和平方根。当调用这些函数时,我们通常会保存返回的结果到变量中,如 `x = math.cos(radians)` 或者 `golden = (math.sqrt(5) + 1) / 2`。在交互模式下,Python 解释器会立即显示函数的返回结果。然而,在脚本中,如果仅调用函数而未处理返回值,那么结果就会被丢弃。 无返回值函数,又称空函数(void functions),例如 `print_twice()`,它们执行操作但不返回任何结果。这类函数通常用于输出信息或执行其他副作用,如修改数据结构。调用无返回值函数并尝试将结果赋值给变量,变量会获得一个特殊值 `None`。例如,`result = print_twice('Bing')` 在打印 "Bing" 两次后,`result` 被赋值为 `None`。需要注意的是,`None` 是一种特殊类型,不同于字符串 "None",可以通过 `type()` 函数来验证,如 `print(type(None))` 返回 `<class 'NoneType'>`。 在初学阶段,我们通常会先接触到无返回值函数,随着编程经验的积累,我们会学习如何编写有返回值函数。有返回值函数通过 `return` 关键字将计算结果传递回调用方,这使得我们可以利用函数的计算能力进行更复杂的逻辑处理。 在《像计算机科学家一样思考》(ThinkPython)这本书中,作者 Allen Downey 强调了问题求解能力在计算机科学中的核心地位。通过学习和运用有返回值函数与无返回值函数,我们可以更好地理解和解决计算问题,同时培养出结合数学、工程和科学思维的综合能力。