匿名函数lambda

#匿名函数 对简单函数的定义
# 语法: 函数名 =lambda 形参:返回值
# lambda 是定义匿名函数的关键字,相当于函数的def
# 形参的数量按需加,加多少都可以,只要用逗号隔开就可以
# def func(a,b):
#    return a+b
# print(func(1,2))

#匿名函数
# func=lambda a,b:a+b
# print(func(1,2))
#
# # 在字符串中,返回索引中为0和2的元素
str1='abcdefg'
# print(str1[0])
# print(str1[2])
# # 法一
a=[]
a.append(str1[0])
a.append(str1[2])
# print(a)
# # 法二
li=list(str1[0:3])
li.remove('b')
print(li)
# # 法三
func =lambda x:[x[0],x[2]]
print(func('abcdefg'))

# # 三目运算
a=3
b=4
print(a) if a>b else print(b)
# 用匿名函数求if 和else
func=lambda a,b:a if a>b else b
print(func(3,9))
# 用匿名函数求平方
func=lambda a:a**2
print(func(2))

# 内置函数
# abs()返回绝对值
print(abs(-3))

# 求和sum
print(sum([1,2,3]))
# min 求最小值 max求最大值
print(min([1,2,3]))
print(max([1,2,3]))

# zip拉链函数 内部以元组形式返回
# 对应的打包,没有匹配会舍弃掉
a=[1,2,3]
b=[4,5,6,9]
print(tuple(zip(a,b)))

# map()函数
#map(function,iterable)映射函数
# 作用:可对跌代对象中每个元素进行映射,分别执行function
#计算列表中每个元素的平方,返回新列表
li=[1,2,3,4,5]
def funa(x):
    return x*x
mp=map(funa,li)
print(list(mp))
# # 使用匿名函数
print(list(map(lambda x:x*x,li)))
#
# # reduce() 可迭代对象通过计算使元素不断减少,最终得到一个计算值
# # reduce(函数名,可迭代对象)
from functools import reduce  #导入模块
list1=[1,2,3,4]
def func(x,y):
    return x+y
res =reduce(func,list1)
print(res)
print(reduce(lambda a,b:a+b,list1))

# enumerate枚举 用于将一个可遍历的数据对象组合作为一个索引序列,同时列出数据和数据下标,一般用在for循环中
li=['a','b','c']
for i,j in enumerate(li):
     print(i,j)
print(list(enumerate(li)))
print(dict(enumerate(li)))

# 拆包
def func():
    a=10
    b=20
    c=30
    return a,b,c
a1,b1,c1=func()     #拆解
print(a1)
print(b1)
print(c1)
print(func())

# 元组拆包列表
tu=(1,2,3,4)
a,*b,c=tu
print(a)
print(b)
print(c)
# 列表拆包
list1=[1,2,3,4]
a,*b,c=list1
print(b)
# 字典拆包
dict1={'name':'lwl',"sex":'男'}
a,b=dict1
print(a)
print(b)
# 注意:对字典,拆包后获取的是字典的key,不会获取键值

  • 9
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值