Python Glossary English

Python 3.15+Linuxosпонятие

os.statx_result

os — файловая система

Результат os.statx: поля stx_size, stx_mtime, stx_btime и другие. Поле, которого нет в stx_mask, равно None, а не нулю.

Синтаксис

st = os.statx(path, mask)
st.stx_size, st.stx_btime, st.stx_mask

Имена полей начинаются с stx_, как в системном вызове: stx_size — размер, stx_mtime и stx_mtime_ns — время изменения, stx_btime — время создания (birth time). Главное отличие от os.stat_result — честное «нет данных»: если ядро или файловая система не вернули поле, вместо правдоподобного нуля стоит None — а вернуть его могут и без запроса в маске. Перед использованием поле проверяют на None или сверяют stx_mask с нужной константой STATX_*.

Примеры

import os
with open('demo.txt', 'w') as f:
    f.write('hello')
st = os.statx('demo.txt', os.STATX_SIZE)
print(type(st).__name__, st.stx_size)  # → statx_result 5
has_btime = bool(st.stx_mask & os.STATX_BTIME)
print(has_btime == (st.stx_btime is not None))  # → True — поле есть, только если бит в stx_mask

См. также

Открыть в полном глоссарииdocs.python.orgСообщить о неточности