WEB开发网
开发学院软件开发Python Python 函数、文件与模块 阅读

Python 函数、文件与模块

 2007-03-30 12:32:37 来源:WEB开发网   
核心提示: 清单 3. 更好的乘法表函数>>> def timesTable2(nrows=5, ncols=5):... for row in range(1, nrows + 1):... for cols in range(1, ncols + 1):... print &qu

清单 3. 更好的乘法表函数

>>> def timesTable2(nrows=5, ncols=5):
...   for row in range(1, nrows + 1):
...     for cols in range(1, ncols + 1):
...       print "%3d " % (row * cols),
...     print
...
>>> timesTable2(4, 6)
 1  2  3  4  5  6
 2  4  6  8  10  12
 3  6  9  12  15  18
 4  8  12  16  20  24
>>> timesTable2() 
 1  2  3  4  5
 2  4  6  8  10
 3  6  9  12  15
 4  8  12  16  20
 5  10  15  20  25
>>> timesTable2(ncols=3)
 1  2  3
 2  4  6
 3  6  9
 4  8  12
 5  10  15

两个乘法表函数的定义非常相近,但清单 3 中的函数有用得多(通过清单 3 中的 3 次调用即可看出这一点)。为函数添加此附加功能的方法非常简单:提供名为 nrows 和 ncols 的两个输入参数,允许在调用函数时更改乘法表的大小。这两个参数随后会被提供给生成乘法表的两个 for 循环。

关于 timesTable2 函数的另一要点就是两个输入参数有默认值。在函数签名中为参数提供默认值,方法是在参数名后添加等号和值,例如 nrows=5。默认参数使程序获得了更高的灵活性,因为在您调用函数时,可以包含两个输入参数,也可以仅包含一个输入参数,甚至可以一个参数都不包含。但这种方法可能会导致某些问题。如果您在函数调用期间未指定全部参数,则必须显式地写出您所指定的参数的名称,以使 Python 解释器能够正确地调用函数。最后一个函数调用正体现了这一点,它显式地调用了带有 ncols=3 的 timesTable2 函数,函数创建了一个 5 行(默认值)3 列(所提供的值)的乘法表。

上一页  1 2 3 4 5 6 7 8 9  下一页

Tags:

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接