Fredrik, ...I tried using your code... static long *get_long_array(PyObject *data, int *data_size) { int i, size; long* out; PyObject* seq;
seq = PySequence_Fast(data, "expected a sequence"); if (!seq) return NULL; size = PySequence_Size(seq); if (size < 0) return NULL; if (data_size) *data_size = size; out = (long*) PyMem_Malloc(size * sizeof(long)); if (!out) { Py_DECREF(seq); PyErr_NoMemory(); return NULL; } for (i = 0; i < size; i++) out[i] = PyInt_AsLong(PySequence_Fast_GET_ITEM(seq, i)); Py_DECREF(seq); if (PyErr_Occurred()) { PyMem_Free(out); out = NULL; } return out; } and I get this error.. C:\project\myapp.c(549) : error C2040: 'get_long_array' : 'long *(struct _object *,int *)' differs in levels of indirection from 'int ()' any idea? Fredrik Lundh wrote: > Jeremy Moles wrote: > > > Probably what you want to do though is just keep the tuple as is and > > iterate over it using the PySequence_* protocol: > > > > http://docs.python.org/api/sequence.html > > I did post a complete and tested example a few days ago, which contained > code that showed how to do this. a complete waste of time, of course. > > </F> -- http://mail.python.org/mailman/listinfo/python-list