У меня есть вложенный список:
regions = [[1,2,3],[3,4],[1,3,4],[1,2,3,5]]
Я хочу удалить каждый список в этом вложенном списке, который содержится в другом, т. Е. [3,4] содержится в [1,3,4] и [1,2,3] содержится в [1,2,3,5], поэтому результат:
result = [[1,3,4],[1,2,3,5]]
Пока я делаю:
regions_remove = []
for i,reg_i in enumerate(regions):
for j,reg_j in enumerate(regions):
if j != i and list(set(reg_i)-set(reg_j)) == []:
regions_remove.append(reg_i)
regions = [list(item) for item in set(tuple(row) for row in regions) -
set(tuple(row) for row in regions_remove)]
И у меня есть: regions = [[1, 2, 3, 5], [1, 3, 4]]
, и это решение, но я хотел бы знать, какое решение является наиболее питоническим?
(извините, что не выкладывал весь свой код раньше, я новичокк этому ...