当前位置:   article > 正文

Python使用函数作为参数_python 函数名作为参数

python 函数名作为参数

Python使用函数作为参数

def run(func):
    print("hello world")
    func()
    print("1")

def test():
    print("test")
run(test)
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8

运行结果如下:
在这里插入图片描述

当调用的方法有参数的时候,需要将参数也传进去,调用的时候使用[方法名(参数1,参数2)]

def run(func,a,b):
    print("hello world")
    func(a,b)
    print("1")

def test(a,b):
    print(a+b)
    
run(test,3,5)
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9

运行结果如下:
在这里插入图片描述
使用函数当做入参,函数本身包含不确定个数的入参
如果要调用的方法的入参个数不确定,可以使用args或**args。但是一定要把args放到最后面

def run(func,a,*args):
    print("hello world")
    print(a)
    print(*args)
    print("end")

def plus(*args):
    res=0
    for arg in args:
        res=res+arg
    print(res)

run(plus,100,1,2,3,4)
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13

运行结果:
在这里插入图片描述

练习

def add(x, y, f):
    return f(x) + f(y)
如果传入abs作为参数f的值:

add(-5, 9, abs)
根据函数的定义,函数执行的代码实际上是:

abs(-5) + abs(9)
由于参数 x, y 和 f 都可以任意传入,如果 f 传入其他函数,就可以得到不同的返回值。

任务
利用add(x,y,f)函数,计算:

import math
def add(x, y, f):
    return f(x) + f(y)
print add(25, 9, math.sqrt)

结果为8.0
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19

参考链接:
[1] https://blog.csdn.net/hellenlee22/article/details/90055588
[2] https://www.cnblogs.com/meitian/p/6756665.html
[3]https://www.cnblogs.com/superxuezhazha/p/5714949.html

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/IT小白/article/detail/356206
推荐阅读
相关标签
  

闽ICP备14008679号