标签

函数

Python 2018-05-26

python的一等函数

在Python中,函数是一等对象,而一等对象的定义是满足下述条件的程序实体:
- 在运行时创建 - 能赋值给变量或数据结构中的元素 - 能作为参数传递给函数 - 能作为函数的返回结果

我们通过下面的例子来证明python中的函数是对象:

>>> def factorial(n):
...     '''return n!'''
...     return 1 if n < 2 else n * factorial(n-1)
...
>>> factorial(41)
33452526613163807108170062053440751665152000000000
>>> factorial.__doc__
'return n!'
>>> type(factorial)
<class 'function'>

在第三行就可以看出,factorial是一个类的示例,另外再看看下面的例子可以看出,python中的函数满足上面所讲的一等对象定义的要求:

>>> fact=factorial
>>> fact
<function factorial at 0x10d6daea0>
>>> fact(5)
120
>>> map(factorial,range(11))
<map object at 0x10d5e9c88>
>>> list(map(factor...
发现更多