#python #iterator
#питон #итератор
Вопрос:
Проблема, с которой я столкнулся, заключается в том, что я хотел бы вставить значения из короткого списка в более длинный список в определенных местах, поэтому у нас есть List1 и List2
List1 = [10, 20, x, 50, x 100, 20, x]
List2 = [99, 88, 111]
и в позиции x в списке 1 я хотел бы вставить значение из списка 2 (в том же порядке).
Чтобы получить конечный результат следующим образом:
List_result = [10, 20, 99, 50, 88, 100, 20, 111]
Я пытался перебирать разные списки, но пока ничего не добился.
Я надеюсь, что кто-нибудь сможет мне помочь!
заранее благодарю
Комментарии:
1. Пожалуйста, обновите свой вопрос кодом, который вы пробовали.
Ответ №1:
Одним из способов может быть перебор первого списка и сопоставление элемента с x
индексом и замена на индекс из второго списка:
List1 = [10, 20, 'x', 50, 'x', 100, 20, 'x']
List2 = [99, 88, 111]
i = 0
for indx, l1 in enumerate(List1):
if 'x' == l1 :
List1[indx] = List2[i]
i = 1
print(List1)
ВЫВОД:
[10, 20, 99, 50, 88, 100, 20, 111]
Редактировать:
Другой способ создания нового списка:
new_lst = []
for x in List1:
if x != 'x':
new_lst.append(x)
else:
for y in List2:
new_lst.append(y)
print(new_lst)