Я хотел бы найти только конкретные файлы, которые всегда содержит некоторые определенные строки в его имени. < /p>
Например, список файлов: < /p>
Код: Выделить всё
file_list = ['00AAAredneck20240213134024.csv',
'00AAAredneck20240213134024.raw',
'00AAAredneck20240213134024cal.csv',
'01BBB_CC-PPP20240213134024_merged.csv',
'01DEFG20240213134024.csv',
'01DEFG20240213134024.raw',
'01DE FG20240213134024.csv',
'01DE FG20240213134024.raw',
'01DEFG-PPP20240213x001.csv',
'01DEFG-PPP20240213x002.csv',
'01DEFG-PPP20240213x003.csv',
'01DEFG-PPP20240213x004.csv',
'01DEFG-PPP20240213x005.csv',
'01DEFG-PPP20240213x006.csv',
'01DEFG-RAW20240213x001.dat',
'01DEFG-RAW20240213x002.dat',
'01DEFG-RAW20240213x003.dat',
'02HHHLLL20240213134024.csv',
'02HHHLLL20240213134024.raw',
'20240213134024Comb.csv',
'PICsfile_1AAAredneck_20240213134024',
'PICsindex_1AAAredneck_20240213134024',
'Log20240213134024.txt',
'O20240213134024.ini',
'data.ini',
]
< /code>
Моя цель - найти оба файла с именем < /p>
[list]
[*]01DEFG20240213134024.csv
Код: Выделить всё
01DE FG20240213134024.csv
Но мой код
search_file =[x for x in file_list if 'DE' in x and 'EF' in x and 'csv' in x and 'PPP' not in x]
print(search_file)
< /code>
дает только первое из них: < /p>
['01DEFG20240213134024.csv']
< /code>
Я не понимаю, почему '01de fg20240213134024.csv' (с пространством между DE и FG) нет в этом списке результатов. Может ли кто -нибудь объяснить мне это?>
Подробнее здесь: https://stackoverflow.com/questions/797 ... conditions