Есть такой объект:
some_list = [
[
'11;9999;ret',
'11;8888;qwe',
'11;4444;qje'
],
[
'22;1111;hgf',
'22;9999;kyu',
'22;7777;cvb',
],
[
'33;7777;cvb',
'33;1111;shc',
'33;9999;ret'
]
]
Данные в списках всегда упорядочены, всегда в таком формате
%;important;%. Как найти пересечение строк в этих списках,
основываясь только на
important, т.е. получить все строки, если
important есть во всех списках.
Например из списка
some_list
должно получится это:
['11;9999;ret', '22;9999;kyu', '33;9999;ret']
Как это реализовать?
Если бы надо было найти пересечение по всей строке, то это легко, вот так:
some_another_list = [
[
'9999',
'45645',
'2'
],
[
'345345',
'9999',
'2'
],
[
'111111',
'8',
'9999'
]
]
list(set.intersection(*map(set, some_another_list)))
['9999']
Но мне нужны остальные данные в строках.