See the built-in function pow() Returns
NULL on failure. This is the equivalent of the Python expression
"pow(o1, o2, o3)", where o3 is optional.
If o3 is to be ignored, pass Py_None in its place
(passing NULL for o3 would cause an illegal memory access).
Returns the result of adding o1 and o2, or NULL on failure.
The operation is done in-place when o1 supports it. This is the
equivalent of the Python expression "o1 += o2".
Returns the result of subtracting o2 from o1, or
NULL on failure. The operation is done in-place when o1
supports it. This is the equivalent of the Python expression "o1
-= o2".
Returns the result of multiplying o1 and o2, or NULL on
failure. The operation is done in-place when o1 supports it.
This is the equivalent of the Python expression "o1 *= o2".
Returns the result of dividing o1 by o2, or NULL on failure.
The operation is done in-place when o1 supports it. This is the
equivalent of the Python expression "o1 /= o2".
Returns the remainder of dividing o1 by o2, or NULL on
failure. The operation is done in-place when o1 supports it.
This is the equivalent of the Python expression "o1 %= o2".
See the built-in function pow() Returns
NULL on failure. The operation is done in-place when o1
supports it. This is the equivalent of the Python expression "o1
**= o2" when o3 is Py_None, or an in-place variant of
"pow(o1, o2, o3)" otherwise. If o3 is to be
ignored, pass Py_None in its place (passing NULL for o3
would cause an illegal memory access).
Returns the result of left shifting o1 by o2 on success, or
NULL on failure. The operation is done in-place when o1
supports it. This is the equivalent of the Python expression "o1
<<=o2".
Returns the result of right shifting o1 by o2 on success, or
NULL on failure. The operation is done in-place when o1
supports it. This is the equivalent of the Python expression "o1
>>=o2".
Returns the ``bitwise and'' of o1 and o2 on success
and NULL on failure. The operation is done in-place when
o1 supports it. This is the equivalent of the Python expression
"o1 &= o2".
Returns the ``bitwise exclusive or'' of o1 by o2 on success, or
NULL on failure. The operation is done in-place when o1
supports it. This is the equivalent of the Python expression "o1
^= o2".
Returns the ``bitwise or'' of o1 and o2 on success, or NULL
on failure. The operation is done in-place when o1 supports
it. This is the equivalent of the Python expression "o1 |=
o2".
This function takes the addresses of two variables of type
PyObject*. If the objects pointed to by *p1 and
*p2 have the same type, increment their reference count
and return 0 (success). If the objects can be converted to a
common numeric type, replace *p1 and *p2 by their
converted value (with 'new' reference counts), and return 0.
If no conversion is possible, or if some other error occurs, return
-1 (failure) and don't increment the reference counts. The
call PyNumber_Coerce(&o1, &o2) is equivalent to the Python
statement "o1, o2 = coerce(o1, o2)".