
2.7 函数和模块
Python语言中包括许多内置的函数,例如print()、max()等,用户也可以自定义函数。函数是可以重复调用的代码块,使用函数可以有效地组织代码,提高代码的重用率。
本节简要介绍函数的定义和调用,有关函数的展开阐述请参见第8章。
2.7.1 函数的创建和调用
Python使用复合语句def创建函数对象,其语法格式如下。

函数的调用格式如下。

在创建函数时可以声明函数的参数,即形式参数,简称形参;在调用函数时需要提供函数需要的参数的值,即实际参数,简称实参。
函数可以使用return返回值。无返回值的函数相当于其他编程语言中的过程。
【例2.28】 声明和调用函数示例(sayHello.py)。

程序运行结果如下。

【例2.29】 声明和调用函数getValue(b,r,n),根据本金b、年利率r和年数n计算最终收益v。提示:v=b(1+r)n。

程序运行结果如下。

2.7.2 内置函数
Python语言中包含若干常用的内置函数,例如dir()、type()、id()、help()、len()等,用户可以直接使用。
【例2.30】 内置函数使用示例。

2.7.3 模块函数
通过import语句可以导入模块module,然后使用module.function(arguments)形式调用模块中的函数。
【例2.31】 模块的导入示例1。

用户也可以通过“from…import…”形式直接导入包中的常量、函数和类,或者通过“from…import*”形式导入包中的所有元素,然后使用function(arguments)形式直接调用模块中的函数。
【例2.32】 模块的导入示例2。

2.7.4 函数API
Python语言中提供了海量的内置函数、标准库函数、第三方模块函数,使用这些函数的关键是了解其调用方法,函数的调用方法由应用程序编程接口(API)确定。常用函数API如表2-5所示。
表2-5 Python常用函数API

Python典型的函数调用如表2-6所示。
表2-6 Python典型的函数调用
