Как удалить файлы на ftp из одной папки которых нет в другой?
Пусть:
ftp.cwd(‘../‘)
ftp.cwd(‘Folder1’)
files1 = ftp.nlst()
ftp.cwd(‘../‘)
ftp.cwd(‘Folder2)
files2 = ftp.nlst()
Нужно удалить элементы из списка files1 которых нет в списке files2
Ответы (1 шт):
Автор решения: Kers
→ Ссылка
Не могу проверить именно работу в ftp но логику можно реализовать примерно так:
# Пусть `f1` и тд это имена файлов
files1 = ["f1", "f2", "f3", "f4"]
files2 = ["f1", "f2", "f5", "f6"]
del_list=[] # Список файлов на удаление
for i in files1:
if i not in files2:
del_list.append(i)
# Удаляем файлы.
for i in del_list:
ftp.delete(i)
Единственное что стоит учитывать какие пути будут в списках относительные или абсолютные. Чтобы не получилось что Вы путаетесь удалить файлы которых никогда и не было или не в той директории.
P.S. Или предоставьте пример того что у Вас получается в списках файлов.