Создать список из другого списка по условию
Имеются два списка:
l1=['0023', '0024', '0025']
l2=['IMG_0023_475_30.tif', 'IMG_0023_550_20.tif', 'IMG_0023_670_30.tif',
'IMG_0023_715_10.tif', 'IMG_0023_840_20.tif', 'IMG_0024_475_30.tif',
'IMG_0024_550_20.tif', 'IMG_0024_670_30.tif', 'IMG_0024_715_10.tif',
'IMG_0024_840_20.tif', 'IMG_0025_475_30.tif', 'IMG_0025_550_20.tif',
'IMG_0025_670_30.tif', 'IMG_0025_715_10.tif', 'IMG_0025_840_20.tif']
Далее что должно происходить:
берется элемент из первого списка (0023) во втором списке берутся файлы, где есть 0023 и помещаются в список. В конечном итоге должен получится список списков:
[['IMG_0023_475_30.tif', 'IMG_0023_550_20.tif', 'IMG_0023_670_30.tif',
'IMG_0023_715_10.tif', 'IMG_0023_840_20.tif'],
['IMG_0024_475_30.tif', 'IMG_0024_550_20.tif',
'IMG_0024_670_30.tif','IMG_0024_715_10.tif', 'IMG_0024_840_20.tif'],
['IMG_0025_475_30.tif', 'IMG_0025_550_20.tif',
'IMG_0025_670_30.tif', 'IMG_0025_715_10.tif', 'IMG_0025_840_20.tif']]
Как это сделать, товарищи??
Ответы (1 шт):
Автор решения: Zhihar
→ Ссылка
алгоритм
- проходите по списку l1
- проходите внутри 1) по списку l2
- ищете подстроку l1 в строке l2
- если находите - помещаете элемент l2 в новый список
- проверяете выходной список на дубликаты и удаляете их (или сразу множество
setвместоlistиспользуете)