Я хотел бы пройти через данный каталог e://www/files/delivery
и все его подкаталоги и удалить все изображения, которые заканчиваются _thumb.jpg
.Пройти через каталог, удалить
Что я пытался до сих пор:
import os
dir='e:\www\files\delivery'
for root, dirs, files in os.walk(dir):
for name in files:
if name.endswith(("_thumb.jpg")):
os.remove(name?)....
Видимо, это не работает.
Кроме того, если я также хочу изменить размер всех изображений, используя python wand library
вместо их удаления, будет ли он одним и тем же процессом?
Если вы просто взглянуть на документацию [ 'os.walk'] (http://docs.python.org/2/library/os.html#os.walk), оба примера показывают вам, как получить имя пути. (Второй - даже передать его в 'os.remove'.) – abarnert
Это не значит, что вы попадете в ваш цикл, потому что' e: \ www \ files \ delivery' имеет символ формы в середине это, а не обратная косая черта и f. _Always_ используйте необработанные строки, избегайте обратных косых черт или вместо этого используйте косые черты при работе с путями Windows. – abarnert
Основываясь на том, что говорит @abarnert, если вы не знаете, что такое сырая строка или как это сделать ... Необработанная строка не интерпретирует символы (т.е. '\ n' останется как' \ n' и не станет новой строкой). Чтобы создать необработанную строку, поставьте перед строкой 'r':' r'e: \ www \ files \ delivery'' – SethMMorton