python

当前位置:首页 > python基础教程 > 当前文章

python基础教程

使用函数作为函数的参数(回调函数)

2020-08-25 77赞 python中国网
每篇文章努力于解决一个问题!python高级、python面试全套、操作系统经典课等可移步文章底部。

  1、使用函数变量

  Python 的函数也是一种值,可以把函数本身赋值给变量,通过该变量来调用函数。例如如下代码。

# -*- coding: utf-8 -*-

def test():
    def echo(para):
        print(para)
    return echo

res = test()
res('隔壁老王')

D:python3installpython.exe D:/pyscript/py3script/python66/python66.py
隔壁老王

Process finished with exit code 0


  疑问:上述代码看上去很啰嗦,为何要多此一举把函数名复制给一个变量呢?

  其实每一个知识点都有其应用场景,看不到场景就无法理解他!简单来说,上述代码变量名只有一个fun,fun 在不同的情况下指向不同的函数,让程序更加灵活。真正的场景等着在项目开发中感受吧!现在学的都是知识点,开发项目会让你把知识融会贯通!

  2、使用函数作为参数传入

  如果希望函数内部某些代码根据条件动态改变,则可以将提前写好的某个函数作为参数传入。这种方式也就是所谓的回调函数。

# -*- coding: utf-8 -*-


def func1(n):
    return n**2


def func2(n):
    return n**3


def do(func1,arg):
    for i in arg:
        print(func1(i))


lis = [1,2,3,4,5]


print('求列表每个元素的平方')
do(func1,lis)

print('求列表每个元素的立方')
do(func2,lis)

D:python3installpython.exe D:/pyscript/py3script/python66/python66.py
求列表每个元素的平方
1
4
9
16
25
求列表每个元素的立方
1
8
27
64
125

Process finished with exit code 0


文章评论

使用函数作为函数的参数(回调函数)文章写得不错,值得赞赏