arrays
Scott David Daniels
Scott.Daniels at Acm.Org
Thu Nov 18 20:44:17 EST 2004
Scott David Daniels wrote:
> If you want to refer to a block of memory that you share with your C
> code (especially if the C code controls the memory, you might also want
> to check out my "Blocks and Views" code at:
>
> http://members.dsl-only.net/~daniels/block.html
To follow up on my own post, once you have a View v of, say, 100
floating point data entries:
>>> multidim = [v[x : x+1] for x in range(0, 100, 10)]
>>> revdim = [v[x : 100 : 10] for x in range(10)]
>>> v[27]
43.6
>>> multidim[2][7]
43.6
>>> revdim[7][2]
43.6
>>> multidim[2][7] = 19.1
>>> multidim[2][7]
19.1
>>> revdim[7][2]
19.1
>>> v[27]
19.1
That is, you maintain the mapping to the original memory when taking
strides. All subscript operations change how the memory is referenced,
not take copies of the memory.
--Scott David Daniels
Scott.Daniels at Acm.Org
More information about the Python-list
mailing list