Выделение элементов из списка python с определенными индексами

Я уверен, что есть хороший способ сделать это в Python, но я довольно новичок в этом языке, поэтому, простите меня, если это просто!

У меня есть список, и я хотел бы выделить определенные значения из этого списка. Значения, которые я хочу выделить, – это те, чьи индексы в списке указаны в другом списке.

Например:

indexes = [2, 4, 5] main_list = [0, 1, 9, 3, 2, 6, 1, 9, 8] 

выход будет:

 [9, 2, 6] 

(т. е. элементы с индексами 2, 4 и 5 из main_list).

У меня такое чувство, что это можно сделать, используя что-то вроде понимания списков, но я не могу понять это (в частности, я не могу понять, как получить доступ к индексу элемента при использовании понимания списка).

4 Solutions collect form web for “Выделение элементов из списка python с определенными индексами”

 [main_list[x] for x in indexes] 

Это вернет список объектов, используя понимание списка.

 t = [] for i in indexes: t.append(main_list[i]) return t 

Я думаю, решение Yuval A довольно ясное и простое. Но если вы действительно хотите понять однострочный список:

 [e for i, e in enumerate(main_list) if i in indexes] 
 map(lambda x:main_list[x],indexes) 
  • Как удалить смежные повторяющиеся элементы в списке, используя списки?
  • Подсчет положительных элементов в списке с использованием списков Python
  • Понимание Python-списка в Java
  • Сопоставление списков Python для создания нескольких списков
  • Понимание списка Python с уникальными элементами
  • Удалите четное / нечетное число из нечетного / четного списка Python.
  • Python: найдите последовательное изменение в одном члене пар списка, сообщите другое
  • Python - поиск инкрементных нумерованных последовательностей с пониманием списка
  • понимание вложенного списка python
  • Как математически вычитать элементы в двух списках на Python и выводить только те элементы, которые соответствуют условию?
  • Самый быстрый способ преобразования итератора в список
  • Python - лучший язык программирования в мире.