Вы ищете функции PyObject_RichCompare
:
PyObject *result = PyObject_RichCompare(a, b, Py_EQ);
От documentation:
PyObject* PyObject_RichCompare(PyObject *o1, PyObject *o2, int opid)
Возвращаемое значение: Новая ссылка.
Сравните значения o1
и o2
используя операцию, заданную opid
, который должен быть одним из Py_LT
, Py_LE
, Py_EQ
, Py_NE
, Py_GT
или Py_GE
, что соответствует <
, <=
, ==
, !=
, >
, или >=
соответственно. Это эквивалент выражения Python o1 op o2
, где op
- оператор , соответствующий opid
. Возвращает значение сравнения по результату или NULL
при сбое.
Вы также можете быть заинтересованы в PyObject_RichCompareBool
function, который делает то же самое, как PyObject_RichCompare
но возвращает целое число, а не PyObject *
. В частности, возвращается значение 1
, значение 0
для false, и -1
.
Что касается сравнения, то или нет. – marsh