все Python 3Linux · macOSosфункция
os.statvfs
os — файловая система
Возвращает статистику файловой системы по пути (размер блока, свободное место). Доступно на Unix.
Синтаксис
os.statvfs(...)
Свободное место для обычного пользователя — f_bavail * f_frsize, а не f_bfree: часть блоков зарезервирована для root. Переносимый и более простой способ узнать место на диске — shutil.disk_usage, он работает и на Windows. Нужна, когда интересны детали: число inode, флаги монтирования, максимальная длина имени.
Примеры
import os
st = os.statvfs('/') # → ? только Unix: статистика файловой системы, содержащей путь '/'
print(st.f_bsize) # → ? только Unix: предпочтительный размер блока ФС, например 4096
print(round(st.f_bavail * st.f_frsize / 1024**3, 1)) # → ? только Unix: свободно гигабайт обычному пользователю, например 37.4
print(st.f_bfree >= st.f_bavail) # → True — часть свободных блоков зарезервирована под root
print(os.statvfs('/нет-такого-пути')) # → ? только Unix: FileNotFoundError
См. также
Частые ошибки
Открыть в полном глоссарииdocs.python.orgСообщить о неточности