[EMAIL PROTECTED] wrote: > I'm looking at the C API and wanting to know a good way to convert > Python numeric types to native c types. For strings I've been using > PyString_AsString(v) and thats great, but I would like to do the same > for ints and floats.
double d = PyFloat_AsDouble(v); long i = PyInt_AsLong(v); double real = PyComplex_RealAsDouble(v); double imag = PyComplex_ImagAsDouble(v); Py_complex c = PyComplex_AsCComplex(v); long i = PyLong_AsLong(v); unsigned long y = PyLong_AsUnsignedLong(v); double d = PyLong_AsDouble(v); PY_LONG_LONG l = PyLong_AsLongLong(v); // and others; see include/longobject.h for details the float and int versions also available as "unsafe" macro versions double d = PyFloat_AS_DOUBLE(v); int i = PyInt_AS_LONG(op); (the macro versions assume that that v points to a python object of the right type; it's up to you to do the type check) </F> -- http://mail.python.org/mailman/listinfo/python-list