python 基础 函数部分

本文深入解析Python函数定义与调用,包括参数传递、匿名函数、*args与**kwargs的使用,以及map和filter函数的应用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一般格式

Def func(a,b=1,c):      #关键字 def 定义方法名,参数
  Print(a,b,c)          #方法体  此函数具体实施的代码

Func(c=1,a=1)          #使用方法 ,方法+参数

定义和其他语言,比如JAVA等大致相同,只是有一点需要强调的是这里面的参数类型没有指明。python是变量动态类型管理,只有在编译过程时才根据代码对变量类型进行确定。

单*和双**操作

当需要进行多参数操作时,可用*进行操作,表示余下全部元素以集合形式进行汇总至某个元素变量中

Def get(a,b,*scrores):
    print(a,b,scrores)
get(1,2,3,4,5)                          #a=1 b=2 scoroes=[3,4,5]

但注意,进行操作时,传入的必须时单个的值,如果传入元组等数据结构时,需要进行解包,同样解包符号也为*

Def avg(*scrores):
    Return sum(scoroes)/len(scores)
A=[1,2,3}
Avg(*A)           #必须有*,否则报错

当传入的是字典表时,使用**,使用方法和单*相似

employee={
    "salary":100,
    "age":23
}

def use(**employee):
    print(employee)
use(**employee)

lambda 匿名函数

a=lambda x,y :x+y(1,2)                  #直接使用
f=lambda name:print(name)               #给予方法名称
f2=lambda x,y :x+y                      #:后面代表返回值

在python的语法中,万物皆可对象,匿名函数也不例外。在需要重复次数较少且较为简单的逻辑,匿名函数为我们的使用提供了极大的便利。

map和filter

这里顺便就欸少一下和函数关系比较大的2个关键字,filter 是通过生成 True 和 False 组成的迭代器将可迭代对象中不符合条件的元素过滤掉;而 map 返回的则是 True 和 False 组成的迭代器

x=[1,2,3]
result=list(map(lambda x:x+5,x))    #需要将生成元素list,不然给出的是储存地址
print(result)                       #通过迭代将X的每个元素计算后的每个元素放入函数中

l=list(range(1,11))
def even_number(x):
    return x%2==0
res=filter(even_number(),l)         #将l的每个数值放入函数中判断是否满足
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值