位元組陣列物件

型別 PyByteArrayObject

PyObject 的子型別代表一個 Python 位元組陣列物件。

PyTypeObject PyByteArray_Type
作為 穩定 ABI 的一部分。

PyTypeObject 例項代表 Python 位元組陣列型別;它與 Python 層中的 bytearray 物件相同。

型別檢查宏

int PyByteArray_Check(PyObject *o)

如果物件 o 是一個位元組陣列物件或位元組陣列型別的子型別的例項,則返回 True。此函式總是成功。

int PyByteArray_CheckExact(PyObject *o)

如果物件 o 是一個位元組陣列物件,但不是位元組陣列型別的子型別的例項,則返回 True。此函式總是成功。

直接 API 函式

PyObject *PyByteArray_FromObject(PyObject *o)
返回值: 新引用。 穩定ABI 的一部分。

從任何實現緩衝區協議的物件 o 返回一個新的位元組陣列物件。

失敗時,返回 NULL 並設定異常。

PyObject *PyByteArray_FromStringAndSize(const char *string, Py_ssize_t len)
返回值: 新引用。 穩定ABI 的一部分。

string 及其長度 len 建立一個新的位元組陣列物件。

失敗時,返回 NULL 並設定異常。

PyObject *PyByteArray_Concat(PyObject *a, PyObject *b)
返回值: 新引用。 穩定ABI 的一部分。

連線位元組陣列 ab,並返回一個新的包含結果的位元組陣列。

失敗時,返回 NULL 並設定異常。

Py_ssize_t PyByteArray_Size(PyObject *bytearray)
作為 穩定 ABI 的一部分。

檢查 NULL 指標後返回 bytearray 的大小。

char *PyByteArray_AsString(PyObject *bytearray)
作為 穩定 ABI 的一部分。

檢查 NULL 指標後,將 bytearray 的內容作為 char 陣列返回。返回的陣列總是附加一個額外的 null 位元組。

int PyByteArray_Resize(PyObject *bytearray, Py_ssize_t len)
作為 穩定 ABI 的一部分。

bytearray 的內部緩衝區大小調整為 len。失敗時返回 -1 並設定異常。

3.14 版本中已更改: 負的 len 現在將導致設定異常並返回 -1。

這些宏以安全性換取速度,它們不檢查指標。

char *PyByteArray_AS_STRING(PyObject *bytearray)

類似於 PyByteArray_AsString(),但沒有錯誤檢查。

Py_ssize_t PyByteArray_GET_SIZE(PyObject *bytearray)

類似於 PyByteArray_Size(),但沒有錯誤檢查。