Курс 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. Создание GUI с Tkinter: Entry
  2. Печать комбинаций в Python с Itertools
  3. Распаковка с оператором *
  4. split() без разделителя
  5. Декораторы в Python
  6. Генерация тестовых данных с factory_boy
  7. Метод сравнения объектов в Python
  8. Слияние словарей в Python 3.9
  9. Структура строк в Python
  10. Функция divmod() в Python
  11. Операторы объединения в Python 3.9
  12. Работа с itertools
  13. Красивый вывод списка
  14. Любовь к Python
  15. Сравнение def и lambda-функций
  16. Преобразование строк в числа с плавающей запятой
  17. Установка и использование TensorFlow
  18. Работа со словарями в Python
  19. Метод rename() для переименования файлов и каталогов
  20. Переопределение метода __or__()
  21. Создание и операции с дробями
  22. Изменение переменной в Python: nonlocal
  23. Преобразование данных в Python
  24. Метод difference_update() — разность множеств
  25. Метод __irshift__ для Python
  26. Метод rmatmul для пользовательских матриц
  27. Работа с URL-адресами в Python
  28. Работа с индексами списков
  29. Модуль subprocess: запуск внешних команд
  30. Проверка типа данных
  31. Использование обратной косой черты в f-строках
  32. Оператор деления для класса Rational
  33. Обучение модели с указанием эпох
  34. Оптимизация сравнения в Python
  35. Показ всплывающих окон Tkinter
  36. Многострочные комментарии в Python
  37. Работа с эмодзи в Python
  38. Генерация случайных чисел в Python
  39. Подсказки при вводе данных в Python
  40. Работа с YAML в Python
  41. Чтение и запись TOML-конфигов
  42. Замена переменных в Python
  43. Удаление URL-адресов в Python
  44. Отправка поздравлений по дню рождения
  45. Библиотека Chartify: руководство
  46. Метод __ilshift__ для битового сдвига влево
  47. Генераторы в Python

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