探索 Python,第 9 部分: 化零为整
2008-09-30 12:59:07 来源:WEB开发网清单 8. 使用多个模块
>>> from math import sqrt
>>> from test import stats
>>> (m, v) = stats([1, 2, 3, 4, 5, 6, 7, 8, 9])
>>> print m, sqrt(v)
5.0 2.73861278753
如您所见,您可以将多个模块导入到一个 Python 程序中。在大型、内置的模块库与更大量的公用库(其中许多都是开放源码的)的共同协助下,您很快也会成为一名懒惰 —— 也就是杰出 —— 的程序员。
可执行文件
导入一个模块时,Python 解释器会处理模块文件内的各行。实际上,您可以调用 Python 解释器使其仅处理包含于一个文件中的一个 Python 程序。在基于 UNIX® 的操作系统中,您可以轻松创建可执行的文件,如清单 9 所示。
清单 9. 一个完整的 Python 程序
#!/usr/bin/env python
def stats(data):
sum = 0.0
for value in data:
sum += value
mean = sum/len(data)
sum = 0
for value in data:
sum += (value - mean)**2
variance = sum/(len(data) - 1)
return(mean, variance)
(m, v) = stats([1, 2, 3, 4, 5, 6, 7, 8, 9])
print "The mean and variance of the values "
"from 1 to 9 inclusive are ",m, v
观察上例,您应该会产生几分好感,将 Python 程序置于文件内,并使其运行是如此简单。本例与 test.py 文件中的代码之间惟一的差异就是包含了第一行。在基于 UNIX 的操作系统中,本行会使 Python 解释器自动启动,并在终止前处理文件中的语句。本示例中的其他行定义了 stats 函数、调用了函数,并输出了结果。
更多精彩
赞助商链接