Следующие функции и исключения предоставляют интерфейс высокого уровня модуля io
.
io.DEFAULT_BUFFER_SIZE
,io.open()
,io.open_code()
,io.BlockingIOError
,io.UnsupportedOperation
,io.DEFAULT_BUFFER_SIZE
:Атрибут модуля io.DEFAULT_BUFFER_SIZE
целое число, содержащее размер буфера по умолчанию, используемого для буферизации классов модуля io. Встроенная функция open()
использует размер файла blksize
, которое получает от os.stat()
, если это возможно.
>>> import io
>>> io.DEFAULT_BUFFER_SIZE
# 8192
io.open(file, mode='r', buffering=-1, encoding=None, errors=None, newline=None, closefd=True, opener=None)
:Функция io.open()
это псевдоним для встроенной функции open()
. Эта функция поднимает событие аудита open
с аргументами path
, mode
и flags
. Аргументы mode
и flags
могут быть изменены или выведены из исходного вызова.
io.open_code(path)
:Функция io.open_code()
открывает предоставленный файл path
с режимом 'rb'. Эта функция должна использоваться, когда целью является обработка содержимого как исполняемого кода.
Аргументы path
должен быть абсолютный путь до файла.
Поведение функции io.open_code()
может быть отменено более ранним вызовом PyFile_SetOpenCodeHook()
, однако io.open_code()
всегда следует рассматривать как взаимозаменяемую open(path, 'rb')
. Переопределение поведения предназначено для дополнительной проверки или предварительной обработки файла.
io.BlockingIOError
:Исключение io.BlockingIOError
- это псевдоним совместимости для встроенного исключения BlockingIOError.
io.UnsupportedOperation
:Исключение io.UnsupportedOperation
наследует исключения OSError
и ValueError
, которое возникает при вызове неподдерживаемой операции в потоке.
Можно использовать str
или bytes
- подобный объект в качестве файла как для чтения, так и для записи. Для строк io.StringIO
можно использовать как файл, открытый в текстовом режиме. Для io.BytesIO
можно использовать как файл, открытый в двоичном режиме. Оба обеспечивают полные возможности чтения-записи с произвольным доступом.