python的内置函数(续)及匿名函数

Posted leiwei123

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python的内置函数(续)及匿名函数相关的知识,希望对你有一定的参考价值。

一:内置函数(续)

1,zip (拉链方法)

函数用于将可迭代的对象作为参数,将对象中对应的元素打包成一个个元组,然后返回这些元组。如果各个迭代器的元素个数不一致,则返回的元组个数与最短的对象相同

l1 = [1,2,3,]
l2 = [a,b,c,5]
l3 = (*,**,(1,2,3))
for i in zip(l1,l2,l3):
    print(i)

# (1, ‘a‘, ‘*‘)
# (2, ‘b‘, ‘**‘)
# (3, ‘c‘, (1, 2, 3))

2,filter (过滤),通过你的函数,过滤一个可迭代对象

def func(x):
    return x % 2 == 0
ret = filter(func,[1,2,3,4,5,6,7])
print(ret)
for i in ret:
    print(i)

3,map  会根据提供的函数对指定序列做映射

def square(x):  # 计算平方数
    return x ** 2
ret=map(square, [1, 2, 3, 4, 5])  # 计算列表各个元素的平方
print(ret)
for i in ret:
    print(i)

二:匿名函数

定义匿名函数的关键字为lambda,其格式为:函数名 = lambda 参数 :返回值,它是为了解决那些功能很简单的需求而设计的一句话函数。

#这段代码
def func(n):
    return n**n
print(func(10))
 
#换成匿名函数
func = lambda n:n**n
print(func(10))

ps:

1,参数可以有多个,用逗号隔开;

2,匿名函数不管逻辑多复杂,只能写一行,且逻辑执行结束后的内容就是返回值;

3,返回值和正常的函数一样可以是任意数据类型;

4,可以看出,匿名函数并不是真的不能有名字,匿名函数的调用和正常函数的调用一样。

三:匿名函数和内置函数应用举例

dic={k1:10,k2:100,k3:30}
print(dic[max(dic,key=lambda k:dic[k])])

res = map(lambda x:x**2,[1,5,7,4,8])
for i in res:
    print(i)

res = filter(lambda x:x>10,[5,8,11,9,15])
for i in res:
    print(i)

 

以上是关于python的内置函数(续)及匿名函数的主要内容,如果未能解决你的问题,请参考以下文章

内置函数补充匿名函数及闭包

python之匿名函数以及在内置函数中的使用

python--内置函数, 匿名函数

python基础之匿名函数内置函数

python内置函数匿名函数递归

python之内置函数匿名函数递归