2.2.1 使用其他程序中的函数

如果要在一个程序中调用位于另一个程序中定义的函数,其调用方法与调用模块std*和Python模块math和random中函数的机制一致。本节将阐述这种基本的Python语言机制。首先,我们将区分以下两种类型的Python程序:

·模块(module)。模块包含可被其他程序调用的函数。

·客户端(client)。客户端是调用其他模块中的函数的程序。

一个程序可以同时为模块和客户端。上述术语仅仅强调一个程序的某种特殊功能。

创建和使用一个模块一般需要五个(简单)步骤:在客户端中导入模块;在客户端限定函数调用;编写模块的测试客户端;删除模块的全局代码;使得模块可被客户端使用。接下来我们将依次讨论这五个步骤。在讨论的过程中,我们将使用module.py表示模块的名称;使用client.py表示客户端的名称。在随后的讨论中,我们将通过一个实例(模块gaussian.py)阐述创建和使用模块的完整过程:模块gaussian.py(程序2.2.1)是程序gauss.py(程序2.1.2)的模块化版本,用于计算高斯分布函数;客户端程序gaussiantable.py(程序2.2.2)则使用模块计算和输出值的列表。

1. 在客户端中导入模块

要使用模块,请在client.py中编写“import module”语句(注意,没有后缀.py)。import语句的目的是通知Python,客户端的代码可能会调用定义在module.py中的一个或多个函数。在我们的示例中,客户端gaussiantable.py包含语句import gaussian,所以在gaussiantable.py中可调用定义在gaussian.py中的任何函数。在大多数Python代码中(包括本书的所有程序),import语句位于程序的最开始位置,导入标准模块的所有import语句则位于用户自定义模块的前面。 ...

Get 程序设计导论:Python语言实践 now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.