学习python仅此一篇就够了(函数进阶:lambda函数)

发布时间:2024年01月13日

函数进阶

函数的多返回值

def ceshi1():
    return 1, 2

x, y = ceshi1()
print(x) #1
print(y) #2

函数的多种传参方式

1.位置参数:调用函数时根据函数定义的参数位置来传递参数

def ceshi1(name,age):
    print(f"你的姓名是{name},你的年龄是{age}")

ceshi1("wyx", 20)#你的姓名是wyx,你的年龄是20

2.关键字参数:函数调用时通过“键=值”形式传递参数

def ceshi1(name,age):
    print(f"你的姓名是{name},你的年龄是{age}")

ceshi1(name="wyx", age=20)#你的姓名是wyx,你的年龄是20

3.缺省参数:缺省参数也叫默认参数,用于定义函数,为参数提供默认值,调用函数时可不传该默认参数的值

def ceshi1(name,age=10):
    print(f"你的姓名是{name},你的年龄是{age}")

ceshi1(name="wyx")#你的姓名是wyx,你的年龄是10

4.不定长参数:不定长参数也叫可变参数,用于不确定调用的时候会传递多少个参数的场景

def ceshi1(*args):
    print(args)

ceshi1("wyx",10)#('wyx', 10)

5.关键字传递的不定长:

def ceshi1(**args):
    print(args)

ceshi1(name="wyx",age=10)#{'name': 'wyx', 'age': 10}

匿名函数

函数作为参数传递
def ceshi1(num):
    reault = num(1, 2)
    print(reault)

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

ceshi1(num) #3
  • 函数num,作为参数,传入了ceshi1函数中使用

  • ceshi1需要一个函数作为参数传入,这个函数需要接受两个数字进行计算,计算逻辑由这个被传入函数决定

  • num函数接收2个数字对其进行计算,num函数作为参数,传递了ceshi1函数使用

  • 最终,在ceshi1函数内部,由传入的num函数,完成了对数字的计算操作

lambda函数

函数的定义中

  • def关键字,可以定义带有名称的函数

  • lambda关键字,可以定义匿名函数

有名称的函数,可以基于名称重复使用。

无名称的匿名函数,只可临时使用一次。

定义语法:

lambda 传入参数:函数体(一行代码)

  • lambda是关键字,表示定义匿名函数

  • 传入参数表示匿名函数的形式参数,如:x,y表示接收2个形式参数

  • 函数体,就是函数的执行逻辑,要注意:只能写一行,无法写多行代码

def ceshi1(num):
    reault = num(1, 2)
    print(reault)

# def num(x, y):
#     return x + y

ceshi1(lambda x,y:x + y) #3

文章来源:https://blog.csdn.net/m0_66011019/article/details/135574701
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。