В python мы можем использовать
map(lambda word: someFunction(element), data)
но могу ли я получить доступ к индексу, чтобы указать, к какому элементу обращаются?
map(lambda word: someFunction(word,indexOfcurrentelement), data)
Вы можете, если вы сначала перечислите.
map(lambda (index, word): someFunction(word, index), enumerate(data))
Если вы не хотите использовать "лямбда", это один из способов:
x=[50,100,150]
index = []
for i in x:
indexis=x.index(i)
index = index+[indexis]
for a, b in zip(index, x):
print (a,b)
>>> map(lambda (i, x): [i, x], enumerate(['a', 'b', 'c']))
[[0, 'a'], [1, 'b'], [2, 'c']]
Однако, когда он начинает становиться сложным, я предпочитаю переключиться на for
:
for i, x in enumerate(sequence):
# do something with each 'x'
# 'i' is the index