больше pythonic версии итерации списка

Существует ли более питоновский способ определения этой функции?

def idsToElements(ids): elements = [] for i in ids: elements.append(doc.GetElement(i)) return elements 

Возможно, это возможно со списком. Я в основном ищут список идентификаторов и изменяю их на список элементов в чем-то более простом, чем определение функции.

map() – это встроенный Python, который делает именно то, что вы хотите.

 def idsToElements(ids): return map(doc.GetElement, ids) 

Здесь обсуждается использование map() и использование списков.

Самый популярный (и принятый ответ) вывод цитируется здесь:

В некоторых случаях карта может быть микроскопически быстрее (когда вы не делаете лямбда для этой цели, но используете ту же функцию на карте и список). Перечисления списков могут быть более быстрыми в других случаях, и большинство (не все) pythonistas считают их более прямыми и понятными.

Если понимание списка – это все, что вы хотели

 def idsToElements(ids): return [doc.GetElement(i) for i in ids ]