zoukankan      html  css  js  c++  java
  • python3(十二)functional

    # 函数式编程的一个特点就是,允许把函数本身作为参数传入另一个函数,还允许返回一个函数!
    # 变量可以指向函数
    abs(-10)  # 10
    abs  # <built-in function abs>
    # ------abs(-10)是函数调用,而abs是函数本身
    x = abs(-10)
    print(x)  # 10
    
    # 函数名也是变量
    f = abs
    print(f)  # <built-in function abs>
    print(f(-10))  # 10
    
    
    # 说明变量f现在已经指向了abs函数本身。直接调用abs()函数和调用变量f()完全相同
    
    # abs = 10
    # abs(-10) # TypeError: 'int' object is not callable
    # abs指向10后,就无法通过abs(-10)调用该函数了!因为abs这个变量已经不指向求绝对值函数
    
    # 传入函数
    # 既然变量可以指向函数,函数的参数能接收变量,那么一个函数就可以接收另一个函数作为参数,这种函数就称之为高阶函数。
    def add(x, y, f):
        return f(x) + f(y)
    
    
    print(add(-5, 6, abs))  # 11
  • 相关阅读:
    BD String
    1114
    1083
    1084
    1108
    1087
    1145
    1217
    1164
    反射
  • 原文地址:https://www.cnblogs.com/shaozhiqi/p/11543586.html
Copyright © 2011-2022 走看看