Курс Python → Определение размера папок в Python

Для написания программы, которая определяет размер каждой папки в каталоге и выводит название и размер в порядке возрастания, нам понадобится использовать модуль os в Python. Модуль os предоставляет функции для работы с операционной системой, позволяя получать информацию о файлах и папках.

Для начала нам нужно импортировать модуль os:


import os

Затем мы можем создать функцию, которая будет определять размер папки и выводить результат:


def get_folder_size(folder):
    total_size = 0
    for dirpath, dirnames, filenames in os.walk(folder):
        for f in filenames:
            fp = os.path.join(dirpath, f)
            total_size += os.path.getsize(fp)
    return total_size

Далее мы можем создать список папок в каталоге и отсортировать их по размеру:


folders = []
for folder in os.listdir('.'):
    if os.path.isdir(folder):
        size = get_folder_size(folder)
        folders.append((folder, size))

folders.sort(key=lambda x: x[1])

for folder, size in folders:
    print(f'{folder}: {size} bytes')

Таким образом, мы можем использовать простой код на Python с помощью модуля os, чтобы определить размер каждой папки в каталоге и вывести название и размер в порядке возрастания. Это полезно, если вам нужно быстро найти и удалить ненужные файлы или папки на вашем компьютере.

Твои коллеги будут рады, поделись в

Автор урока

Дмитрий Комаровский
Дмитрий Комаровский

Автоматизация процессов
в КраснодарБанки.ру

Другие уроки курса "Python"

  1. Генераторные функции в Python
  2. Форматирование данных с помощью pprint
  3. Метод rlshift для битового сдвига
  4. Декоратор total_ordering для сравнения объектов
  5. История Python
  6. Хранение переменных в Python.
  7. Работа с асинхронными задачами в Python
  8. Генерация UUID в Python
  9. Атрибуты класса и экземпляра
  10. Делегирование в Python
  11. Синхронизация потоков с time.sleep()
  12. Список методов и атрибутов
  13. Конкатенация строк с помощью join()
  14. Закрытие файла в Python
  15. Хэш-функции и метод цепочек
  16. Преобразование регистра символов
  17. Работа со стеком в Python
  18. Блок else в циклах Python
  19. Срезы в Numpy
  20. Атрибуты класса и экземпляра в Python
  21. Импорт в Python: список all
  22. Метод split() для разделения строк
  23. Python Enumerate
  24. Ветвление выражения в Python
  25. Управление фоновыми задачами в Python
  26. Подсчет элементов в Python
  27. Парсинг веб-страниц с Beautiful Soup
  28. Объединение, распаковка и деструктуризация
  29. Сравнение строк в Python
  30. Удаление специальных символов
  31. Ключевое слово global в Python
  32. Работа с модулем random
  33. Метод clear для коллекций
  34. Шаблоны Flask: условия и циклы
  35. Создание вложенного генератора
  36. Фильтрация списков с itertools
  37. Работа с изменяемыми коллекциями
  38. Работа с функцией next() в Python
  39. Сортировка и обратный порядок
  40. Работа с буфером обмена на Python
  41. Удаление файлов и папок в Python
  42. Работа с датой и временем в Python
  43. Поиск с библиотекой Google
  44. Метод Enumerate() для списков
  45. Отправка POST запроса на сервер.
  46. Использование *args
  47. Измерение времени выполнения кода

Marketello читают маркетологи из крутых компаний