Newbie: Struggling again 'map'
Marc 'BlackJack' Rintsch
bj_666 at gmx.net
Sat May 26 07:34:32 EDT 2007
In <1180173252.906992.262570 at q75g2000hsh.googlegroups.com>, mosscliffe
wrote:
> for x,y in map(None, lista, listb): # Also fine - extends as
> expected
> print "MAP:", x, "<<x y>>", y
>
> for x,y in map("N/A", lista, listb): ########## Fails - Can not call a
> 'str'
> print "MAP:", x, "<<x y>>", y
>
> def fillwith(fillchars):
> return fillchars
>
> for x,y in map(fillwith("N/A"), lista, listb): ########## Fails also -
> Can not call a 'str'
> print "MAP:", x, "<<x y>>", y
`map()` expects a function as first argument that will be applied to the
elements in the other the arguments which have to be iterable. That you
can give `None` as a function and the resulting behavior is IMHO a very
ugly thing and has not much to to with the semantics expected from a
`map()` function. The `None` is not the default fill value but a
placeholder for the identity function.
Ciao,
Marc 'BlackJack' Rintsch
More information about the Python-list
mailing list