Mapping None. Why?
paddy3118 at googlemail.com
Thu Jun 12 21:05:02 CEST 2008
Iam wondering why the peculiar behavior of map when the function in
given as None:
Help on built-in function map in module __builtin__:
map(function, sequence[, sequence, ...]) -> list
Return a list of the results of applying the function to the items
the argument sequence(s). If more than one sequence is given, the
function is called with an argument list consisting of the
item of each sequence, substituting None for missing values when
sequences have the same length. If the function is None, return a
the items of the sequence (or a list of tuples if more than one
It seems as the action whith none is the same as using a function of
lambda *x: x
As in the following example:
>>> l1 = 'asdf'
>>> l2 = 'qwertyuip'
>>> l3 = range(3)
('asdf', 'qwertyuip', [0, 1, 2])
>>> map(lambda *x: x, l1,l2,l3) == map(None, l1,l2,l3)
On looking up map on Wikipedia there is no mention of this special
So my question is why?
More information about the Python-list