Триггер оператора утверждения Python SystemError: \loewis\release\python\Objects\longobject.c:270: неверный аргумент для внутренней функции
У меня есть утверждение assert в Python, которое вызывает следующее исключение:
SystemError: \loewis\release\python\Objects\longobject.c:270: bad argument to internal function
Я искал в коде Python версию, которую я использую (2.4.2), и вижу, что эта ошибка происходит от следующей функции в longobject.c:
unsigned long
PyLong_AsUnsignedLong(PyObject *vv)
Теперь я искал эту функцию в исходном коде Python, но я не могу установить связь между этой функцией и утверждением Python assert.
У вас есть идея, где вызывается PyLong_AsUnsignedLong при вызове утверждения Python?
Большое спасибо за вашу помощь.
1 ответ
PyLong_AsUnsignedLong из длинного целочисленного объекта C-API. Он возвращает C без знака Long, представленный переданным объектом Python.