Курс 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. Расчет времени выполнения
  3. Импорт с альтернативным именем
  4. Логирование в Python
  5. Сравнение def и lambda функций в Python
  6. Изучение объектов с помощью dir()
  7. Метод Enumerate() для списков
  8. Добавление вложенных списков
  9. Разбиение текста в Python
  10. Разность множеств
  11. Декораторы в Python
  12. Особенности запятых в Python
  13. Работа с функцией next() в Python
  14. TON Smart Challenge #2: участие и подготовка
  15. Разрешение имен в Python
  16. Список импортированных модулей в Python
  17. Хэш-функции в Python
  18. Обработка ошибок в Python
  19. Работа со словарями в Python
  20. Протокол управления контекстом
  21. Проблемы с именами переменных
  22. Использование defaultdict в Python
  23. Функции map, filter и reduce
  24. Оператор «is not» в Python
  25. Проверка кортежей.
  26. Генератор списка в Python
  27. split() — разделение строки
  28. Цикл while в Python
  29. Оптимизация памяти с помощью __slots__
  30. Создание словаря с значением по умолчанию
  31. Проверка ввода с помощью isdigit
  32. Удаление символа из строки
  33. Retrying в Python: повторные вызовы
  34. Обработка исключений с блоком else
  35. Метод __irshift__ для побитового сдвига вправо
  36. Метод get() в Python
  37. Оболочка Python
  38. Работа со строками в Python
  39. Функция reversed() в Python
  40. Метаклассы в Python
  41. Метод join() для объединения элементов
  42. Отладка кода
  43. Бесконечная проверка в Python
  44. Метод getitem для доступа к элементам последовательности
  45. Управление ресурсами в Python
  46. Имена объектов в Python
  47. Работа с классами данных

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