map()
Return an iterator that applies function to every item of iterable, yielding the results
例如:
a = map(lambda x:x**2 ,[1,2,3])print([b for b in a])
结果:
[1, 4, 9]
或者:
a = map(lambda x,y:x+y ,[1,2,3],[1,2])print([b for b in a])
结果:
[2, 4]
filter
(function, iterable)
Construct an iterator from those elements of iterable for which function returns true.If function is None
, all elements of iterable that are false are removed
例子:
a = filter(lambda x:x>2, [1,2,3])print([b for b in a])
或者 function is None:
a = filter(None,[1,2,0,-1])print([b for b in a])
结果:
[1, 2, -1]
zip()
Make an iterator that aggregates elements from each of the iterables
例子
x = [1, 2, 3]y = [4, 5, 6]zipped = zip(x, y)zipped = list(zipped)print(zipped)
结果
[(1, 4), (2, 5), (3, 6)]
dict()
>>> a = dict(one=1, two=2, three=3)>>> b = { 'one': 1, 'two': 2, 'three': 3}>>> c = dict(zip(['one', 'two', 'three'], [1, 2, 3]))>>> d = dict([('two', 2), ('one', 1), ('three', 3)])>>> e = dict({ 'three': 3, 'one': 1, 'two': 2})>>> a == b == c == d == eTrue
一个综合的例子
a = map(lambda x: dict(zip(['number'], [x])),filter(lambda x: x > 3, [1,2,3,4,5,6]))print([b for b in a])
结果
[{ 'number': 4}, { 'number': 5}, { 'number': 6}]