8.3 Sequence protocol

int PySequence_Check (PyObject *o)
Return 1 if the object provides sequence protocol, and 0 otherwise. This function always succeeds.

PyObject* PySequence_Concat (PyObject *o1, PyObject *o2)
Return the concatination of o1 and o2 on success, and NULL on failure. This is the equivalent of the Python expression: o1+o2.

PyObject* PySequence_Repeat (PyObject *o, int count)
Return the result of repeating sequence object o count times, or NULL on failure. This is the equivalent of the Python expression: o*count.

PyObject* PySequence_GetItem (PyObject *o, int i)
Return the ith element of o, or NULL on failure. This is the equivalent of the Python expression: o[i].

PyObject* PySequence_GetSlice (PyObject *o, int i1, int i2)
Return the slice of sequence object o between i1 and i2, or NULL on failure. This is the equivalent of the Python expression, o[i1:i2].

int PySequence_SetItem (PyObject *o, int i, PyObject *v)
Assign object v to the ith element of o. Returns -1 on failure. This is the equivalent of the Python statement, o[i]=v.

int PySequence_DelItem (PyObject *o, int i)
Delete the ith element of object v. Returns -1 on failure. This is the equivalent of the Python statement: del o[i].

int PySequence_SetSlice (PyObject *o, int i1, int i2, PyObject *v)
Assign the sequence object v to the slice in sequence object o from i1 to i2. This is the equivalent of the Python statement, o[i1:i2]=v.

int PySequence_DelSlice (PyObject *o, int i1, int i2)
Delete the slice in sequence object, o, from i1 to i2. Returns -1 on failure. This is the equivalent of the Python statement: del o[i1:i2].

PyObject* PySequence_Tuple (PyObject *o)
Returns the o as a tuple on success, and NULL on failure. This is equivalent to the Python expression: tuple(o).

int PySequence_Count (PyObject *o, PyObject *value)
Return the number of occurrences of value on o, that is, return the number of keys for which o[key]==value. On failure, return -1. This is equivalent to the Python expression: o.count(value).

int PySequence_In (PyObject *o, PyObject *value)
Determine if o contains value. If an item in o is equal to value, return 1, otherwise return 0. On error, return -1. This is equivalent to the Python expression: value in o.

int PySequence_Index (PyObject *o, PyObject *value)
Return the first index for which o[i]==value. On error, return -1. This is equivalent to the Python expression: o.index(value).

guido@CNRI.Reston.Va.US