#python #list
Вопрос:
Предположим, у меня есть два списка:
list1 = [[2, 4], [3], [0, 4], [1], [0, 2], []]
list2 = [12000,24000,14000,22000,13000,30000]
Как я могу вставить значения list2 в list1 по соответствующей позиции индекса, чтобы вывод был:
list3 = [[14000, 13000], [22000], [12000, 13000], [24000], [12000, 14000], []]
Спасибо.
Ответ №1:
list3 = [[list2[y] for y in x] for x in list1]
Ответ №2:
Вы можете попробовать это:
list1 = [[2, 4], [3], [0, 4], [1], [0, 2], []]
list2 = [12000,24000,14000,22000,13000,30000]
for i in list1:
for k,j in enumerate(i):
i[k]=list2[j]
print(list1)
Выход:
[[14000, 13000], [22000], [12000, 13000], [24000], [12000, 14000], []]
Вот компактное решение:
List3=[[list2[x] for x in i] for i in list1]
print(list3)