exposing C array to python namespace: NumPy and array module.

Craig Ringer craig at postnewspapers.com.au
Sat Jan 1 13:00:48 EST 2005


On Sat, 2005-01-01 at 10:27 -0600, Bo Peng wrote:

> Sorry if I was not clear enough. I was talking about the differece 
> between python array module 
> (http://docs.python.org/lib/module-array.html, Modules/arraymodule.c in 
> the source tree) and NumPy array. They both use C-style memory block 
> arrangement for efficient memory access. While NumPy has both, the array 
> module is designed to be used purely in Python so there is no header 
> file and no function to build an array from a pointer.

Thanks for clarifying that - I had misunderstood your reference to
arraymodule.c .

I guess the core language doesn't have an array type, but as there's a
standard lib module that does (I'd forgotten it was there), it hardly
matters.

It would seem sensible to extend that module with a C API for mapping an
existing array. That would be a rather handy thing to have in the
standard library.

> One of the methods you suggested (creating a new type) already 
> implemented in arraymodule.c. I am not sure if it is appropriate to add 
> the file into my project and add a 'CreateFromLenAndBuf' function.

That sounds like a reasonable approach to me, but I'm hardly an expert.
The code's license permits you to do so, and it's hardly worth repeating
the work if you don't have to.

-- 
Craig Ringer




More information about the Python-list mailing list