os.open ()
os.open ( path, flags, mode=0o777, *, dir_fd=None )
Открывает путь path к файлу и устанавливает различные флаги в соответствии с flags и, возможно, его режим в соответствии с mode. Когда mode вычисляется, текущее значение umask сначала маскируется. Возвращает файловый дескриптор для вновь открытого файла. Новый дескриптор файла не наследуется.
Описание значений flags и mode см. в документации среды выполнения C; константы флагов (например, O_RDONLY и O_WRONLY) определены в модуле os. В частности, в Windows добавление O_BINARY необходимо для открытия файлов в двоичном режиме.
Эта функция может поддерживать пути относительно дескрипторов каталогов с параметром dir_fd.
Вызывает событие аудита, открытое с аргументами path
, mode
, flags
.
Изменено в версии 3.4: новый дескриптор файла теперь не наследуется.
Новое в версии 3.3: аргумент dir_fd.
Изменено в версии 3.5: если системный вызов прерывается и обработчик сигнала не вызывает исключения, функция теперь повторяет системный вызов вместо того, чтобы вызывать исключение InterruptedError (объяснение см. в PEP 475).
Изменено в версии 3.6: Принимает объект, подобный пути (path-like object ).
Следующие константы являются опциями для параметра flags функции open (). Их можно объединить с помощью побитового оператора ИЛИ |
. Некоторые из них доступны не на всех платформах. За описанием их доступности и использования обратитесь к странице руководства open (2) в Unix или в MSDN в Windows.
Эти константы доступны в Unix и Windows:
os.O_RDONLY - открыть файл только для чтения
os.O_WRONLY - открыть файл только для записи
os.O_RDWR - открыть файл для чтения и записи
os.O_APPEND - открыть файл в режиме добавления
os.O_CREAT - создает файл и открывает его для записи
os.O_EXCL - разрешает создание файла, только если он не существует
os.O_TRUNC - открывает файл и обрезает его до нулевой длины
Константы, доступные только в Unix:
os.O_DSYNC
os.O_RSYNC
os.O_SYNC
os.O_NDELAY - по возможности открывает файл в неблокирующем режиме (синоним)
os.O_NONBLOCK - по возможности открывает файл в неблокирующем режиме (синоним)
os.O_NOCTTY - процесс не станет управляющим терминалом процесса (даже если терминальное устройство tty присутствует в команде)
os.O_CLOEXEC - включает флаг закрытия при запуске нового дескриптора файла
Изменено в версии 3.3: Добавлена константа O_CLOEXEC.
Константы, доступные только в Windows:
os.O_BINARY - открывает файл в двоичном режиме
os.O_NOINHERIT - предотвращает создание общего файлового дескриптора
os.O_SHORT_LIVED - создает файл как временный и по возможности не сбрасывает на диск
os.O_TEMPORARY - создает файл как временный, файл удаляется при закрытии дескриптора
os.O_RANDOM - кеширование оптимизировано для произвольного доступа с диска
os.O_SEQUENTIAL - кеширование оптимизировано для последовательного доступа с диска
os.O_TEXT - открывает файл в текстовом режиме
Эти константы являются расширениями и отсутствуют, если они не определены библиотекой C:
os.O_ASYNC
os.O_DIRECT
os.O_DIRECTORY
os.O_NOFOLLOW
os.O_NOATIME
os.O_PATH
os.O_TMPFILE
os.O_SHLOCK
os.O_EXLOCK
Изменено в версии 3.4: Добавлен O_PATH в системах, которые его поддерживают. Добавлен O_TMPFILE, доступный только в Linux Kernel 3.11 или новее.
Last updated
Was this helpful?