PyArg_ParseTuple плюс приведение - PullRequest
0 голосов
/ 20 мая 2010

У меня есть функция c, вызываемая из python. Python дает функции целое число, но я хотел бы использовать ее в качестве другого типа данных в C. В настоящее время я использую

PyArg_ParseTuple (args, "i", &value) и затем вручную выполняем приведение к значению.

Есть ли способ сделать это через PyArg?

1 Ответ

0 голосов
/ 21 мая 2010

К какому типу данных вы пытаетесь привести аргумент в C?

Если вам нужен целочисленный тип, похоже, вы сможете получить его, используя строку другого формата в PyArg_ParseType(). Например, «b» преобразует неотрицательное число Python в целое число без знака.

unsigned char value;
PyArg_ParseTuple (args, "b", &value)

Если вы хотите что-то, что не является целочисленным типом, вы можете изменить тип объекта Python, который передается вашей функции, а затем использовать соответствующую строку формата для получения желаемого конечного результата.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...