Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Python: Поиск и удаление пустых саб дирректорий по указанному пути
|
|||
|---|---|---|---|
|
#18+
Здравствуйте уважаемые. Совсем недавно начал изучение Python. Возникла конкретная задача, которую пока что не удаётся победить: Есть дирректория, которая находится по адресу, например C:/test_data/, в которой могут находиться другие папки, а в этих папках ещё папки и тд. В некоторых дирректориях есть файлы, а каких-то из них нет, они пустые. Так вот задача в том, чтобы найти все пустые дирректории и саб дирректории по указаннмоу выше пути и удалить их. Я пытался сделать это так: import os pdir = 'C:/test_data/' #путь к дерриктории contdir = [] for i in os.walk(pdir): contdir.append(i) for i in contdir: print(i) # тут я получаю картежи (адрес каталога, список поддиректорий и имена файлов, если они есть), получаю такую картинку: ('C:/test_data/', ['data', 'test_cases_py', 'test_data_java', 'test_py1', 'test_py2'], ['test_data1.fi', 'test_data2.fa', 'test_data3.fu']) ('C:/test_data/data', [], ['test_py.fi', 'test_py1.fi', 'test_py2.fa']) ('C:/test_data/test_cases_py', [], []) ('C:/test_data/test_data_java', ['sub_folder'], ['test_file.fa', 'test_file1.fi']) ('C:/test_data/test_data_java\\sub_folder', [], ['test_doc.fa']) ('C:/test_data/test_py1', ['test_cases_jv'], ['test_data_jv.fu', 'test_data_py.fi']) ('C:/test_data/test_py1\\test_cases_jv', [], []) ('C:/test_data/test_py2', [], []) и вот дальше мне надо найти пустые поддиректории на всех уровнях и удалить их. Пытался определить пустые поддиректории так: if os.listdir(pdir) == []: print('Empty') но тут проблема в том, что ищется только пустая папка по указанному пути, а глубже он не лезет искать пустые поддиректории. Помогите пожалуйста разобраться , как же реализовать данную задачу. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.06.2014, 16:15 |
|
||
|
Python: Поиск и удаление пустых саб дирректорий по указанному пути
|
|||
|---|---|---|---|
|
#18+
Гуглить рекурсию. Код: python 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.06.2014, 09:47 |
|
||
|
Python: Поиск и удаление пустых саб дирректорий по указанному пути
|
|||
|---|---|---|---|
|
#18+
FishHook , да, я много чего нагуглил и этот пример, который вы скинули в том числе. Так же из разных примеров удалось собрать что-то такое: Код: python 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. Но вот чёткого понимания как это всё работает (рекурсивный поиск) пока что нету. Спасибо в любом случае, буду разбираться. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.06.2014, 09:57 |
|
||
|
|

start [/forum/topic.php?fid=23&msg=38674996&tid=1462680]: |
0ms |
get settings: |
12ms |
get forum list: |
16ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
55ms |
get topic data: |
9ms |
get forum data: |
3ms |
get page messages: |
36ms |
get tp. blocked users: |
1ms |
| others: | 250ms |
| total: | 388ms |

| 0 / 0 |
