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

    一:概述

    匿名函数主要用来处理比较简单的逻辑,用一行显示,并将运算结果作为返回值返回

    二:书写规则

    函数名 = lambda 参数:返回值

    参数可以有多个,多个参数使用逗号分隔

    三 :例子

    将func函数书写成匿名函数

    def func(x):
        return x**2
    ret = func(2)
    print(ret)
    
    func_lambda = lambda x:x**2
    ret = func_lambda(2)
    print(ret)

    匿名函数主要和其他函数配合使用

    和max函数配合使用

    # 根据字典的值返回最大的键
    
    # 原始做法
    
    dic={'k1':10,'k2':100,'k3':30}
    def func(k):
        return dic[k]
    ret = max(dic,key=func)
    print(ret)
    
    # 使用lambda
    dic={'k1':10,'k2':100,'k3':30}
    ret = max(dic,key=lambda k:dic[k])
    print(ret)

    和map函数配合使用

    # 将列表元素求平方
    # 传统做法
    l = [1,2,3,4,5]
    def func(x):
        return x**2
    ret = map(func,l)
    for i in ret:
        print(i)
    
    # lambda
    l = [1,2,3,4,5]
    ret = map(lambda x:x**2,l)
    for i in ret:
        print(i)

    和map函数混合使用

    # 现有两个元组(('a'),('b')),(('c'),('d')),请使用python中匿名函数生成列表[{'a':'c'},{'b':'d'}]
    
    ret = zip((('a'),('b')),(('c'),('d')))
    def func(x):
        return {x[0]:x[1]}
    res =list(map(func,ret))
    print(res)
    
    
    res = list(map(lambda x:{x[0]:x[1]},zip((('a'),('b')),(('c'),('d')))))
    print(res)
  • 相关阅读:
    什么是函数式编程
    红包算法
    laravel中查看执行的SQL语句
    身份证号信息后台匹配
    在函数内部访问外部的变量
    设计模式-观察者模式
    laravel查询构造器操作数据库
    linux根目录文件夹的作用
    关于laravel连接数据库报错
    设定起始日期,遍历到今天的日期
  • 原文地址:https://www.cnblogs.com/wc89/p/10295597.html
Copyright © 2011-2022 走看看