- 论坛徽章:
- 0
|
/*
[root@58 extend_python]# gcc -c -I /usr/include/python2.5 add.c
[root@58 extend_python]# gcc -shared add.o -o add.so
[root@58 extend_python]# chcon -t texrel_shlib_t ./add.so
[root@58 extend_python]# python
Python 2.5.1 (r251:54863, Oct 30 2007, 13:54:11)
[GCC 4.1.2 20070925 (Red Hat 4.1.2-33)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import add
>>> add.add(3,4)
7
*/
#include "Python.h"
static PyObject* add(PyObject* self, PyObject* args)
{
int x=0;
int y=0;
int z=0;
if (! PyArg_ParseTuple(args, "i|i", &x, &y))
return NULL;
z=x+y;
return Py_BuildValue("i", z);
}
static PyMethodDef addMethods[] =
{
{"add", add, METH_VARARGS, "Execute a shell command."},
{NULL, NULL, 0, NULL}
};
PyMODINIT_FUNC initadd()
{
Py_InitModule("add", addMethods);
}
本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u1/54441/showart_1681503.html |
|