리스트 객체¶
-
PyTypeObject PyList_Type¶
- Part of the Stable ABI.
이
PyTypeObject
인스턴스는 파이썬 리스트 형을 나타냅니다. 이것은 파이썬 계층의list
와 같은 객체입니다.
-
PyObject *PyList_New(Py_ssize_t len)¶
- Return value: New reference. Part of the Stable ABI.
성공하면 길이 len 인 새 리스트를, 실패하면
NULL
을 반환합니다.참고
If len is greater than zero, the returned list object’s items are set to
NULL
. Thus you cannot use abstract API functions such asPySequence_SetItem()
or expose the object to Python code before setting all items to a real object withPyList_SetItem()
orPyList_SET_ITEM()
. The following APIs are safe APIs before the list is fully initialized:PyList_SetItem()
andPyList_SET_ITEM()
.
-
Py_ssize_t PyList_Size(PyObject *list)¶
- Part of the Stable ABI.
list에서 리스트 객체의 길이를 반환합니다; 이는 리스트 객체에 대한
len(list)
와 동등합니다.
-
Py_ssize_t PyList_GET_SIZE(PyObject *list)¶
Similar to
PyList_Size()
, but without error checking.
-
PyObject *PyList_GetItemRef(PyObject *list, Py_ssize_t index)¶
- Return value: New reference. Part of the Stable ABI since version 3.13.
Return the object at position index in the list pointed to by list. The position must be non-negative; indexing from the end of the list is not supported. If index is out of bounds (
<0 or >=len(list)
), returnNULL
and set anIndexError
exception.Added in version 3.13.
-
PyObject *PyList_GetItem(PyObject *list, Py_ssize_t index)¶
- Return value: Borrowed reference. Part of the Stable ABI.
Like
PyList_GetItemRef()
, but returns a borrowed reference instead of a strong reference.
-
PyObject *PyList_GET_ITEM(PyObject *list, Py_ssize_t i)¶
- Return value: Borrowed reference.
Similar to
PyList_GetItem()
, but without error checking.
-
int PyList_SetItem(PyObject *list, Py_ssize_t index, PyObject *item)¶
- Part of the Stable ABI.
리스트의 인덱스 index에 있는 항목을 item으로 설정합니다. 성공하면
0
을 반환합니다. index가 범위를 벗어나면,-1
을 반환하고IndexError
예외를 설정합니다.참고
이 함수는 item에 대한 참조를 “훔치고” 영향을 받는 위치의 리스트에 이미 있는 항목에 대한 참조를 버립니다.
-
void PyList_SET_ITEM(PyObject *list, Py_ssize_t i, PyObject *o)¶
에러 검사 없는
PyList_SetItem()
의 매크로 형식. 일반적으로 이전 내용이 없는 새 리스트를 채우는 데 사용됩니다.Bounds checking is performed as an assertion if Python is built in debug mode or
with assertions
.참고
이 매크로는 item에 대한 참조를 “훔치고”,
PyList_SetItem()
과는 달리 대체되는 항목에 대한 참조를 버리지 않습니다; list 의 i 위치에 있는 참조는 누수를 일으킵니다.
-
int PyList_Insert(PyObject *list, Py_ssize_t index, PyObject *item)¶
- Part of the Stable ABI.
항목 item을 리스트 list의 인덱스 index 앞에 삽입합니다. 성공하면
0
을 반환합니다; 실패하면-1
을 반환하고 예외를 설정합니다.list.insert(index, item)
에 해당합니다.
-
int PyList_Append(PyObject *list, PyObject *item)¶
- Part of the Stable ABI.
리스트 list의 끝에 객체 item을 추가합니다. 성공하면
0
을 반환합니다; 실패하면-1
을 반환하고 예외를 설정합니다.list.append(item)
에 해당합니다.
-
PyObject *PyList_GetSlice(PyObject *list, Py_ssize_t low, Py_ssize_t high)¶
- Return value: New reference. Part of the Stable ABI.
list에서 low 와 high 사이에있는 객체들을 포함하는 리스트를 반환합니다. 실패하면
NULL
을 반환하고 예외를 설정합니다.list[low:high]
에 해당합니다. 리스트 끝에서부터의 인덱싱은 지원되지 않습니다.
-
int PyList_SetSlice(PyObject *list, Py_ssize_t low, Py_ssize_t high, PyObject *itemlist)¶
- Part of the Stable ABI.
low와 high 사이의 list슬라이스를 itemlist의 내용으로 설정합니다.
list[low:high] = itemlist
에 해당합니다. itemlist는NULL
일 수 있는데, 빈 리스트의 대입을 나타냅니다 (슬라이스 삭제). 성공하면0
을, 실패하면-1
을 반환합니다. 리스트 끝에서부터의 인덱싱은 지원되지 않습니다.
-
int PyList_Extend(PyObject *list, PyObject *iterable)¶
Extend list with the contents of iterable. This is the same as
PyList_SetSlice(list, PY_SSIZE_T_MAX, PY_SSIZE_T_MAX, iterable)
and analogous tolist.extend(iterable)
orlist += iterable
.Raise an exception and return
-1
if list is not alist
object. Return 0 on success.Added in version 3.13.
-
int PyList_Clear(PyObject *list)¶
Remove all items from list. This is the same as
PyList_SetSlice(list, 0, PY_SSIZE_T_MAX, NULL)
and analogous tolist.clear()
ordel list[:]
.Raise an exception and return
-1
if list is not alist
object. Return 0 on success.Added in version 3.13.
-
int PyList_Sort(PyObject *list)¶
- Part of the Stable ABI.
list 항목을 제자리에서 정렬합니다. 성공하면
0
을, 실패하면-1
을 반환합니다. 이것은list.sort()
와 동등합니다.
-
int PyList_Reverse(PyObject *list)¶
- Part of the Stable ABI.
list의 항목을 제자리에서 뒤집습니다. 성공하면
0
을, 실패하면-1
을 반환합니다. 이것은list.reverse()
와 동등합니다.
-
PyObject *PyList_AsTuple(PyObject *list)¶
- Return value: New reference. Part of the Stable ABI.
list의 내용을 포함하는 새 튜플 객체를 반환합니다;
tuple(list)
와 동등합니다.