У меня есть тысячи файлов, которые мне нужно удалить в каталоге. Я хочу сохранить первые десять (в алфавитном / числовом формате), которые соответствуют условиям. Например, я хочу сохранить 'part-of-file-name-abc00000.filetype', но не 'part-of-file-name-abc42422.filetype'. Ниже приведен код, который я использую для этого:
import os
i = 0
for f in os.listdir('/dir/dir'):
if 'part-of-file-name' in f:
i = i + 1
if i > 10:
os.remove(f)
else:
os.remove(f)
print("Files found: " + str(i))
print("Files removed: " + str(i - 10))
Это ошибка, которую я получаю:
File "delete_data_files.py", line 11, in <module>
os.remove(f)
OSError: [Errno 2] No such file or directory: 'part-of-file-name-i-want-then-other-parts.filetype'
Это не имеет смысла для меня. Файл явно существует; в противном случае я не буду читать полное имя файла в ошибке.