Python-3 lambda匿名函数

1.lambda表达式主要的作用就是将代码更加简洁高效

  指的是:表达一句只有返回值的函数

  语法:lambda 参数: 返回值

 

"""
-*- coding: utf-8 -*-
@FileName: lambda.py
@Software: PyCharm
@Time    : 2023/4/28 13:31
@Author  : Panda
"""


action = lambda: 'ok'
print(action())

action1 = lambda n: 'ok' if n < 2 else 'no'  # 三目运算
print(action1(10))

2.lambda在Pandas里面也有很大的作用,当你在某列的时候,可能需要对应列进行操作时,会存在一列返回其它值,这个时候lambda+函数很好的方式

import pandas as pd


def return_method(x, y, exist):
    # 此时注意接收的dataframe的数据,需要以变量的形式接收,其它的则可以原参数变量
    com = y + "_" + x
    if com in exist.keys():
        return exist[com]
    else:
        return "False"


def return_method_one(x):
    if x in exist.keys():
        return exist[x]
    else:
        return "False"


data = pd.read_csv()
exist = {}
# 新增一列, 需要传输多个参数axis=1一定要加,不然无法得知具体的列还是行, 不仅可以传本来的也可以传入其它的变量参数,比如加个exist
data["新增"] = data.apply(lambda row: return_method(row["old1"],row["old2"], exist), axis=1)
# 新增一列,需要传输某一列的每个值
data["新增"] = data["old1"].apply(lambda x: return_method_one(x))

 

posted @ 2023-04-28 13:44  许个未来—  阅读(6)  评论(0编辑  收藏  举报