Содержание страницы
Объекты bytearray¶Byte Array Objects
-
PyTypeObject PyByteArray_Type¶
- Часть Stable ABI.
Этот экземпляр
PyTypeObjectпредставляет тип bytearray в Python; он является тем же объектом, что иbytearrayв слое Python.
Макросы проверки типа¶Type check macros
Прямые функции API¶Direct API functions
-
PyObject *PyByteArray_FromObject(PyObject *o)¶
- Возвращаемое значение: новая ссылка. Часть Stable ABI. Потокобезопасность: Безопасно для одновременного использования на одном объекте.
Возвращает новый объект bytearray из любого объекта, o, который реализует протокол буфера.
При ошибке возвращает
NULLс установленным исключением.Примечание
Если объект реализует буферный протокол, то буфер не должен изменяться во время создания объекта байтового массива.
-
PyObject *PyByteArray_FromStringAndSize(const char *string, Py_ssize_t len)¶
- Возвращаемое значение: новая ссылка. Часть стабильного ABI. Потокобезопасность: атомарно.
Создаёт новый объект bytearray из string и его длины, len.
При ошибке возвращает
NULLс установленным исключением.
-
PyObject *PyByteArray_Concat(PyObject *a, PyObject *b)¶
- Возвращаемое значение: новая ссылка. Часть Stable ABI. Потокобезопасность: Безопасно для одновременного использования на одном объекте.
Объединяет байтовые массивы a и b и возвращает новый байтовый массив с результатом.
При ошибке возвращает
NULLс установленным исключением.Примечание
Если объект реализует буферный протокол, то буфер не должен изменяться во время создания объекта байтового массива.
-
Py_ssize_t PyByteArray_Size(PyObject *bytearray)¶
- Часть Stable ABI.Потокобезопасность: Атомарно.
Возвращает размер байтового массива после проверки указателя
NULL.
-
char *PyByteArray_AsString(PyObject *bytearray)¶
- Часть Stable ABI. Потокобезопасность: Безопасен для вызова из нескольких потоков только с внешней синхронизацией.
Возвращает содержимое байтового массива как массив char после проверки указателя
NULL. Возвращаемый массив всегда содержит дополнительный нулевой байт в конце.Примечание
Не является потокобезопасным изменять объект байтового массива при использовании возвращённого массива char.
-
int PyByteArray_Resize(PyObject *bytearray, Py_ssize_t len)¶
- Часть Stable ABI.
Изменяет размер внутреннего буфера байтового массива до len. При ошибке возвращается
-1с установленным исключением.Изменено в версии 3.14: Отрицательное значение len теперь приводит к установке исключения и возврату -1.
Макросы¶Macros
Эти макросы жертвуют безопасностью ради скорости и не проверяют указатели.
-
char *PyByteArray_AS_STRING(PyObject *bytearray)¶
- Потокобезопасность: Безопасно вызывать из нескольких потоков только с внешней синхронизацией.
Аналогично
PyByteArray_AsString(), но без проверки ошибок.Примечание
Не является потокобезопасным изменять объект байтового массива при использовании возвращённого массива char.
-
Py_ssize_t PyByteArray_GET_SIZE(PyObject *bytearray)¶
- Потокобезопасность: атомарно.
Аналогично
PyByteArray_Size(), но без проверки ошибок.