Найти - Пользователи
Полная версия: переменные в .so модуле
Начало » Python для новичков » переменные в .so модуле
1
qwer
Как добавить переменные-константы в компилируемый С-модуль ?
Функции декларируются через Py_InitModule, а по переменными не могу найти информации.
Андрей Светлов
Смотрите, как другие делают:
	m = Py_InitModule3(MODNAME,
posix_methods,
posix__doc__);
// ...
Py_INCREF(PyExc_OSError);
PyModule_AddObject(m, "error", PyExc_OSError);
Идея ясна?
qwer
спасибо, нашел PyModule_AddIntConstant
Андрей Светлов
На самом деле вот полный список:
PyAPI_FUNC(int) PyModule_AddObject(PyObject *, const char *, PyObject *);
PyAPI_FUNC(int) PyModule_AddIntConstant(PyObject *, const char *, long);
PyAPI_FUNC(int) PyModule_AddStringConstant(PyObject *, const char *, const char *);
#define PyModule_AddIntMacro(m, c) PyModule_AddIntConstant(m, #c, c)
#define PyModule_AddStringMacro(m, c) PyModule_AddStringConstant(m, #c, c)
Макросы появились начиная с Python 2.6
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB