Как удалить элементы из списка?
Есть список -
a = ['test1','test2','test3','test2','test5','test6','test7 ','testing8','test2','test10','test2']
И есть список -
b = ['tet1','tet2','tet3','tet4','tet5','tet6','tet7','tet8','tet9','tet10','tet11',]
И переменная -
c = 'test2'
Надо из списка a удалить все элементы которые не равны переменной c. То есть результат должен быть таким -
a = ['','tet2','','tet2','','','','','tet2','','tet2']
А из списка b надо получить только те значения которые совпадают индексами со не пустыми значениями из списка a. То есть на выходе должно быть 2 переменные -
a = ['','tet2','','tet2','','','','','tet2','','tet2']
b = ['','tet2','','tet4','','','','','tet9','','tet11']
Ответы (1 шт):
Автор решения: timur
→ Ссылка
# проходим по всему списку и сравниваем каждый элемент с c,
# если они равны, то оставляем, иначе заменяем пустой строкой
a = [i if i == c else '' for i in a]
# проходим сразу по двум спискам и если элемент списка a - это пустая строка,
# то заменяем элемент списка b пустой строкой, иначе оставляем его
b = ['' if i == '' else j for i, j in zip(a, b)]