Python: узнать размер файла

Чтобы узнать, сколько весит файл на диске, в Python достаточно одной строки кода. Покажу два рабочих варианта: классический через os и более современный через pathlib.


Что нужно знать


Пример 1: модуль os

import os

file_stat = os.stat('my_file.txt')
print(file_stat.st_size)

Вывод

34

Функция os.stat() возвращает информацию о файле. Атрибут st_size содержит размер файла в байтах.


Пример 2: модуль pathlib

from pathlib import Path

file = Path('my_file.txt')
print(file.stat().st_size)

Вывод

34

С pathlib решение выглядит более объектно: создаём объект пути, вызываем stat() и берём st_size. Единица измерения та же — байт.


Как это работает

Оба способа обращаются к системному вызову операционной системы, который возвращает метаданные файла. st_size — это поле структуры этих метаданных, отвечающее за размер. Если файл по указанному пути отсутствует, обе функции выбросят исключение FileNotFoundError.