Первый список - это набор индексов ко второму списку, с которого необходимо записать значения под этими индексами в третий список. Как это сделать?
Всем привет, столкнулся с такой задачей на одном из форумов:
Есть список b_index:
b_index= [1, 2, 4, 5, 8]
И есть список b:
b = [10.0, 0.0, 15.0, -30.0, 0.0, 0.0, 0.0, 18.0]
Список b_index является набором индексов (порядковых номеров) к значениям списка b начиная с 1, а не с 0 (учитывайте это, ведь порядковый отсчёт в Python ведётся с 0). Вывести в отдельный список results значения списка b, которые соответствуют индексам, заданным в списке b_index.
Т.е. в списке results должны быть значения:
results = [10.0, 0.0, -30.0, 0.0, 18.0]
Как это сделать? Пробовал со вложенными циклами но результат не совпадал. Заранее спасибо
Ответы (1 шт):
Автор решения: Глеб
→ Ссылка
Ничего сложного:
b_index = [1, 2, 4, 5, 8]
b = [10.0, 0.0, 15.0, -30.0, 0.0, 0.0, 0.0, 18.0]
print([b[i - 1] for i in b_index])
Вывод:
[10.0, 0.0, -30.0, 0.0, 18.0]