字節(jié)數(shù)組對(duì)象?

type PyByteArrayObject?

這個(gè) PyObject 的子類型表示一個(gè) Python 字節(jié)數(shù)組對(duì)象。

PyTypeObject PyByteArray_Type?
Part of the Stable ABI.

Python bytearray 類型表示為 PyTypeObject 的實(shí)例;這與Python層面的 bytearray 是相同的對(duì)象。

類型檢查宏?

int PyByteArray_Check(PyObject *o)?

如果對(duì)象 o 是一個(gè) bytearray 對(duì)象或者 bytearray 類型的子類型的實(shí)例則返回真值。 此函數(shù)總是會(huì)成功執(zhí)行。

int PyByteArray_CheckExact(PyObject *o)?

如果對(duì)象 o 是一個(gè) bytearray 對(duì)象但不是 bytearray 類型的子類型的實(shí)例則返回真值。 此函數(shù)總是會(huì)成功執(zhí)行。

直接 API 函數(shù)?

PyObject *PyByteArray_FromObject(PyObject *o)?
Return value: New reference. Part of the Stable ABI.

根據(jù)任何實(shí)現(xiàn)了 緩沖區(qū)協(xié)議 的對(duì)象 o,返回一個(gè)新的字節(jié)數(shù)組對(duì)象。

PyObject *PyByteArray_FromStringAndSize(const char *string, Py_ssize_t len)?
Return value: New reference. Part of the Stable ABI.

根據(jù) string 及其長(zhǎng)度 len 創(chuàng)建一個(gè)新的 bytearray 對(duì)象。 當(dāng)失敗時(shí)返回 NULL。

PyObject *PyByteArray_Concat(PyObject *a, PyObject *b)?
Return value: New reference. Part of the Stable ABI.

連接字節(jié)數(shù)組 ab 并返回一個(gè)帶有結(jié)果的新的字節(jié)數(shù)組。

Py_ssize_t PyByteArray_Size(PyObject *bytearray)?
Part of the Stable ABI.

在檢查 NULL 指針后返回 bytearray 的大小。

char *PyByteArray_AsString(PyObject *bytearray)?
Part of the Stable ABI.

在檢查 NULL 指針后返回將 bytearray 返回為一個(gè)字符數(shù)組。 返回的數(shù)組總是會(huì)附加一個(gè)額外的空字節(jié)。

int PyByteArray_Resize(PyObject *bytearray, Py_ssize_t len)?
Part of the Stable ABI.

bytearray 的內(nèi)部緩沖區(qū)的大小調(diào)整為 len。

?

這些宏減低安全性以換取性能,它們不檢查指針。

char *PyByteArray_AS_STRING(PyObject *bytearray)?

Similar to PyByteArray_AsString(), but without error checking.

Py_ssize_t PyByteArray_GET_SIZE(PyObject *bytearray)?

Similar to PyByteArray_Size(), but without error checking.