Python 3.3+Linuxosфункция
os.setxattr
os — расширенные атрибуты (xattr)
Устанавливает расширенный атрибут файла.
Синтаксис
os.setxattr(...)
Имя — с префиксом пространства имён ('user.tag'), значение — bytes. Флаги XATTR_CREATE и XATTR_REPLACE превращают запись в «только создать» или «только заменить». На файловой системе без поддержки атрибутов, например на части сетевых дисков и tmpfs старых ядер, поднимается OSError.
Примеры
import os
open('xattr_demo.txt', 'w').close()
os.setxattr('xattr_demo.txt', 'user.author', b'anna') # → ? только Linux: атрибут записан, возвращает None (имя обязано начинаться с user.)
print(os.getxattr('xattr_demo.txt', 'user.author')) # → b'anna'
print(os.setxattr('xattr_demo.txt', 'user.author', b'clara', os.XATTR_CREATE)) # → OSError (EEXIST) — с flags=0 значение просто перезаписалось бы
print(os.setxattr('xattr_demo.txt', 'user.tag', 'важное')) # → TypeError — значение должно быть bytes, а не str
См. также
Частые ошибки
Открыть в полном глоссарииdocs.python.orgСообщить о неточности