T
Thomas Jollans
Hi,
I'm writing some buffer-centric number-crunching routines in C for
Python code that uses array.array objects for storing/manipulating data.
I would like to:
1. allocate a buffer of a certain size
2. fill it
3. return it as an array.
I can't see any obvious way to do this with the array module, but I was
hoping somebody here might be able to help. My best shot would be to:
1. create a bytearray with PyByteArray_FromStringAndSize(NULL, byte_len)
2. fill its buffer
3. initialize an array from the bytearray.
The issue I have with this approach is that array will copy the data to
its own buffer. I'd much rather create an array of a certain size, get a
write buffer, and fill it directly -- is that possible?
I expect that numpy allows this, but I don't really want to depend on
numpy, especially as they haven't released a py3k version yet.
-- Thomas
I'm writing some buffer-centric number-crunching routines in C for
Python code that uses array.array objects for storing/manipulating data.
I would like to:
1. allocate a buffer of a certain size
2. fill it
3. return it as an array.
I can't see any obvious way to do this with the array module, but I was
hoping somebody here might be able to help. My best shot would be to:
1. create a bytearray with PyByteArray_FromStringAndSize(NULL, byte_len)
2. fill its buffer
3. initialize an array from the bytearray.
The issue I have with this approach is that array will copy the data to
its own buffer. I'd much rather create an array of a certain size, get a
write buffer, and fill it directly -- is that possible?
I expect that numpy allows this, but I don't really want to depend on
numpy, especially as they haven't released a py3k version yet.
-- Thomas