我正在映射枚举列表,当我不使用lambda函数时,我想访问索引值。
例如,使用lambda时,我可以像这样访问索引值:
arr = ['a', 'b', 'c', 'd']
map(lambda (i, v): { i: v }, enumerate(arr))
但是当不使用lambda时我不能做同样的事情:
map(parser, enumerate(arr))
def parser(i, v):
return { i : v }
我得到的错误是:
TypeError: parser() takes exactly 2 arguments (1 given)
为什么会这样?