Форум сайта python.su
apologize828это удаление всех пустых каталогов ?
Так вот необходимо: если например df -> gf -> пусто, то удалить gf и df.
Отредактировано (Авг. 30, 2011 01:28:45)
Офлайн
Rodegastогромный респект, то что надо.
Ловите вариант с рекурсией :)#!/usr/bin/python
# -*- coding: utf-8 -*-
import os
def udalenie(kat, P = True):
if os.path.isdir(kat):
if len(os.listdir(kat)) > 0:
for x in os.listdir(kat):
if os.path.isdir(os.path.join(kat,x)):
if len(os.listdir(os.path.join(kat,x))) == 0: os.rmdir(os.path.join(kat,x))
else: udalenie(os.path.join(kat,x))
if P: udalenie(kat, False)
else: os.rmdir(kat)
py.user.nextизвиняюсь если не понятно объяснил что нужно)
это удаление всех пустых каталогов ?
ниоткуда не следует, что нужно удалять пустые каталоги из каталога, где есть файлы
а, в названии темы же инфа
Офлайн
import os
n = False
while n == False:
n = True
for root, dirs, files in os.walk(copy_dir):
if not dirs:
if not files:
n = False
os.rmdir(root)
Отредактировано ve_i_uj (Июнь 2, 2013 15:19:34)
Офлайн
import os for root, dirs, files in os.walk(top, topdown=False): if not files: for name in dirs: os.rmdir(os.path.join(root, name))
Офлайн