Курс 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. Работа с NumPy
  2. Отладка регулярных выражений в Python
  3. Работа с Colorama
  4. Создание директории в Python
  5. Условные выражения в Python
  6. Метод init в Python
  7. Функции с необязательными аргументами
  8. Преобразование кортежа в словарь.
  9. Профилирование кода
  10. Генерация строк с .join()
  11. Модуль sys: основы
  12. Разделение строк методом split()
  13. Статическая типизация в Python
  14. Аргументы *args и **kwargs
  15. Фильтрация списка чисел
  16. Работа с пользовательским вводом
  17. Создание OrderedDict
  18. Удаление ключа из словаря
  19. JMESPath в Python
  20. Избегание изменяемых аргументов
  21. Каналы Senior: Python, Java, Frontend, SQL, C++
  22. Путь к интерпретатору Python
  23. Выражения-генераторы в Python
  24. Метод __irshift__ для побитового сдвига вправо
  25. Создание новых функций через partial
  26. Константы в модуле cmath
  27. Аргумент по умолчанию
  28. Явный импорт переменных
  29. Поиск email
  30. Пересечение списков с использованием множеств
  31. Приближение чисел в Python
  32. Переворот строки с помощью срезов
  33. Flask — веб-фреймворк Python
  34. Работа с CSV файлами
  35. Применение функции к списку
  36. Фильтрация последовательности
  37. Проекты на Python
  38. Проверка памяти объекта
  39. Работа с YAML в Python
  40. Фильтрация данных в Python.
  41. Контроль точности вывода чисел
  42. Непрерывная проверка в Python
  43. Автоматизация действий с Pyautogui

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