python之 《zip,lambda, map》

1.zip

  对于zip我们一般都是用在矩阵上

eg:

a = [1,2,3]
b = [‘a‘, ‘b‘, ‘c‘]
x = zip(a, b)
print(x)
print(list(x))

结果是

<zip object at 0x000002150D755DC8>
[(1, ‘a‘), (2, ‘b‘), (3, ‘c‘)]

可以看到我们是分别将第一个合并到一起

所以我们对列表切片一下来看一下效果

c = zip(a[:-1], a[1:])

那么他对应的结果也是

c = zip(a[:-1], a[1:])
nums = [‘flower‘,‘flow‘,‘flight‘]
for i in zip(*nums):
    print(i)

结果是:
(‘f‘, ‘f‘, ‘f‘)
(‘l‘, ‘l‘, ‘l‘)
(‘o‘, ‘o‘, ‘i‘)
(‘w‘, ‘w‘, ‘g‘)
*num就是反解的意思

2.lambda我们举个简单的例子
g = lambda x: x+2
print(g(8))

那么在这里面呢我们可以看到lambda也是一个函数lambda对应的是一个比较简单的函数:前面是我们要输入的数字 后面是我们要做的一个简单的计算

此时输出的就是8 了

3.map

>>>def square(x) :            # 计算平方数
...     return x ** 2
...
>>> map(square, [1,2,3,4,5])   # 计算列表各个元素的平方
[1, 4, 9, 16, 25]
>>> map(lambda x: x ** 2, [1, 2, 3, 4, 5])  # 使用 lambda 匿名函数
[1, 4, 9, 16, 25]

# 提供了两个列表,对相同位置的列表数据进行相加
>>> map(lambda x, y: x + y, [1, 3, 5, 7, 9], [2, 4, 6, 8, 10])
[3, 7, 11, 15, 19]

look this 他和lambda结合起来可以做更多的事情当然 也不一定是lambda也可以是其他的任意函数

来控制我们的输入

原文地址:https://www.cnblogs.com/BookMiki/p/10192414.html

时间: 2024-11-10 22:04:29

python之 《zip,lambda, map》的相关文章

python zip,lambda,map函数

python zip,lambda,map函数 觉得有用的话,欢迎一起讨论相互学习~Follow Me 感谢莫烦老师 详情 zip 通常用于将两个列表合并在一起以同时进行迭代遍历 注意:直接使用zip输出结果为<zip at 0x1d72cf30bc8>,要配合list一起使用 a = [1, 2, 3] b = [4, 5, 6] zip(a,b) # <zip at 0x1d72cf30bc8> print(list(zip(a, b))) # [(1, 4), (2, 5),

python中的zip、map、reduce 、lambda函数的使用。

lambda只是一个表达式,函数体比def简单很多. lambda的主体是一个表达式,而不是一个代码块.仅仅能在lambda表达式中封装有限的逻辑进去. lambda表达式是起到一个函数速写的作用.允许在代码内嵌入一个函数的定义. 如下例子: 定义了一个lambda表达式,求三个数的和. 再看一个例子: 用lambda表达式求n的阶乘. ------------------------------ lambda表达式也可以用在def函数中. 看例子: 这里定义了一个action函数,返回了一个l

Python -- lambda, map, filter

lambda f = lambda x : x * 2 f(5) map list(map(lambda x:x[0].upper()+x[1:].lower(), ['sQd', 'ZORO'])) #传入列表,首字母变大写,其余变小写 filter list(filter(lambda n: n%2 == 1, [1,2,3,4,5])) #保留奇数,舍弃偶数 list(filter(lambda s: s and s.strip(), ['S', '', None, 'b'])) #删除一

python中的set(),zip()以及map()函数

set.zip和map函数均为python的内置函数. (1)set()      用法:set(interable)  用来创建一个无序不重复元素的集合.可以对其进行集合的一系列操作,例如求差集.并集和补集,利用这一特性可删除重复数据.探索元素之间的关系等.此外还可以进行len操作,返回集合中元素的个数. a = '1234' b = '11m' #由于集合中的元素是无序的,所以set函数每次输出的结果中的元素顺序是不一致的 x = set(a) ## 输出{'4', '2', '1', '3

使用python实现内置map,filter,reduce函数

map函数 # -*- coding: cp936 -*- def myselfmap(f,*args):     def urgymap(f,args):         if args==[]:             return []         else:             return [f(args[0])]+urgymap(f,args[1:])     if list(args)[0]==[]:             #*args有多个参数被传递时返回tuple  

python中的lambda

lambda表达式返回一个函数对象 例子: func = lambda x,y:x+y func相当于下面这个函数 def func(x,y): return x+y 注意def是语句而lambda是表达式 下面这种情况下就只能用lambda而不能用def [(lambda x:x*x)(x) for x in range(1,11)] map,reduce,filter中的function都可以用lambda表达式来生成! map(function,sequence) 把sequence中的值

python中的lambda表达

C++中的lambda表达式与C++11加入标准库,是一个简短的匿名的可调用对象,编译器会将其转化为一个匿名类的对象.lambda表达式的最大特点就是简短灵活,调用方便.它不需要处理很复杂的逻辑,通常只包含一两句简短的代码. python作为一种优雅简洁的脚本语言自然不会错过这种机制.python中的lambda表达式形式如下: lambda 参数列表 : 表达式 如果没有需要传递的参数,参数类表可以为空了,但表达式部分不能为空,因为lambda表达式必须有返回值. lambda表达式会返回一个

python 内建函数 filter,map和reduce

python 内建函数 filter,map和reduce, 三个函数比较类似,都是应用于序列的内置函数,常见的序列包括list.tuple.str等.而且三个函数都可以和lambda表达式结合使用.下面分别介绍. 1.filter filter(bool_func,seq):此函数的功能类似过滤器.调用一个布尔函数bool_func来迭代遍历每个seq中的元素:返回一个使bool_seq返回值为true的元素的序列. 例如 : 从[1,2,3,4,5,6,7,8,9]序列中获取被3整除的序列

【python】详解map函数的用法之函数并行作用解析

Python函数编程中的map(func, seq1[, seq2,-]) 函数是将func作用于seq中的每一个元素,其中seq须是可迭代对象,并将所有的调用的结果作为一个list返回.如果func为None,作用同zip(). 本文参考自:Python中map()函数浅析一文,感谢精彩分享. 下面举得例子来帮助我们更好的理解这个工作过程: 1.对可迭代函数'iterable'中的每一个元素应用'function'方法,将结果作为list返回. 2.如果给出了额外的可迭代参数,则对每个可迭代参

python中filter、map、reduce的区别

python中有一些非常有趣的函数,今天也来总结一下,不过该类的网上资料也相当多,也没多少干货,只是习惯性将一些容易遗忘的功能进行整理. lambda 为关键字.filter,map,reduce为内置函数. lambda:实现python中单行最小函数. g = lambda x: x * 2 #相当于 def g(x): return x*2 filter(function, sequence):对sequence中的item依次执行function(item),将执行结果为True的ite