zoukankan      html  css  js  c++  java
  • 匿名函数

    1、def用于定义有名函数

    func=函数的内存地址

    def func(x,y):
        return x+y

    2、lamdab用于定义匿名函数

    print(lambda x,y:x+y)

    3、调用匿名函数

    方式一:

    res=(lambda x,y:x+y)(1,2)
    print(res)

    方式二:

    func=lambda x,y:x+y
    res=func(1,2)
    print(res)

    4、匿名用于临时调用一次的场景:更多的是将匿名与其他函数配合使用

    5、匿名函数的应用场景

    需求1:找出薪资最高的那个人=》lili

    salaries={
        'siry':3000,
        'tom':7000,
        'lili':10000,
        'jack':2000
    }

    res=max(salaries,key=lambda k:salaries[k])
    print(res)

    需求2:找出薪资最少的那个人=》jack

    res=min(salaries,key=lambda k:salaries[k])
    print(res)

    排序

    res=sorted(salaries,key=lambda k:salaries[k],reverse=True)

    map(映射)的应用(了解)

    l=['alex','lxx','wxx','薛贤妻']
    # 方法一
    new_l=(name+'_dsb' for name in l)
    print(new_l)
    # 方法二
    res=map(lambda name:name+'_dsb',l)
    print(res) # 生成器

    filter的应用(了解)

    l=['alex_sb','lxx_sb','wxx','薛贤妻']
    # 方法一
    res=(name for name in l if name.endswith('sb'))
    print(res)
    # 方法二
    res=filter(lambda name:name.endswith('sb'),l)
    print(res) # 生成器
    

    reduce的应用(了解)相加

    from functools import reduce
    # 数字用法
    res=reduce(lambda x,y:x+y,[1,2,3],10) # 16
    print(res)
    # 字符串用法
    res=reduce(lambda x,y:x+y,['a','b','c']) # 'a','b'
    print(res)
    

  • 相关阅读:
    CentOS 7 和centos6切换图形界面和多用户界面
    centos6.8下安装elasticsearch
    一个xib钟多个Cell
    iOS frame从导航栏下面开始
    Xcode 移除(卸载)插件
    iOS9 HTTP传输安全
    pch头文件
    真机调试---打包6plus出现问题
    Xcode 添加类前缀
    iOS 状态栏黑色背景白色字体
  • 原文地址:https://www.cnblogs.com/bailongcaptain/p/12577113.html
Copyright © 2011-2022 走看看