1.map内建函数
map(function, sequence, *sequence_1)
参数是一个函数,一个或者多个序列
将序列中的每一个元素取出来传入函数中,再将函数结果的返回值组成一个新的序列
实例:
def test(x):
return x**2
>>>l=[2,3,4,5,6]
>>> map(test,l)
[4, 9, 16, 25, 36]
>>>
>>>
>>> new_li=map(lambda x:x+2,[1,2,3,4])
>>> new_li
[3, 4, 5, 6] #
>>>
2.filter()内建函数
filter(function_or_none, sequence)
将序列中的每一个元素传入到函数中,如果函数返回为真,那么就将这个元素加入新的列如果为假就跳过这个元素
实例
>>> def test(x):
... if(x>10):
... return True
... else:
... return False
...
>>> l=[1,4,8,12,45,67]
>>> filter(test,l)
[12, 45, 67]
>>>
>>> filter(lambda x:x>10,[1,2,3,4,667,86])#过滤小于10的元素
[667, 86]
>>>
3.zip()内建函数
zip(seq1, seq2, *more_seqs)
直接看效果
>>>
>>> k=[1,2,3,4]
>>> l=[2,3,4,5]
>>> zip(k,l)
[(2, 1), (3, 2), (4, 3), (5, 4)]
>>>
元素个数不一样
>>> k=[2,3,4,5]
>>> l=[1,2,3]
>>> zip(k,l)
[(2, 1), (3, 2), (4, 3)]
>>>
#元素类型不一样
>>> k=[2,3,4,5]
>>> l=['a','b','c']
>>> zip(k,l)
[(2, 'a'), (3, 'b'), (4, 'c')]
>>>
#多个序列
>>> k=[2,3,4,5]
>>> l=['a','b','c']
>>> j=['v1','v2','v3','v4']
>>> zip(k,l,j)
[(2, 'a', 'v1'), (3, 'b', 'v2'), (4, 'c', 'v3')]
>>>