现在的位置: 首页 > 综合 > 正文

【python】传递函数

2013年05月31日 ⁄ 综合 ⁄ 共 511字 ⁄ 字号 评论关闭

1. 当对一个变量赋值时,实际是将相同
对象的引用赋值给这个变量。如果对象是函数的话,这个对象所有的别名都是可调用的。

>>> def foo():
... print 'in foo()'
...
>>> bar = foo
>>> bar()
in foo()

2. 函数作为参数传入其他函数来进行调用

>>> def bar(argfunc):
... argfunc()
...
>>> bar(foo)
in foo()

3. 一个将函数作为参数传递,并在函数体内调用这些函数

#!/user/bin/env python
def convert(func, seq):
    return [func(eachNum) for eachNum in seq]

myseq = (1,11.11,-1.1e8, 999999999L)
print convert(int, myseq)
print convert(long, myseq)
print convert(float, myseq)

执行结果:

[1, 11, -110000000, 999999999]
[1L, 11L, -110000000L, 999999999L]
[1.0, 11.109999999999999, -110000000.0, 999999999.0]

抱歉!评论已关闭.