Содержание страницы
Объекты 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с установленным исключением.Примечание
Если объект реализует протокол буфера, то буфер не должен изменяться во время создания объекта bytearray.
-
PyObject *PyByteArray_FromStringAndSize(const char *string, Py_ssize_t len)¶
- Возвращаемое значение: новая ссылка. Часть Stable 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(), но без проверки ошибок.