ctypes puntero en medio de una matriz numpy

Sé cómo obtener un puntero de ctypes al principio de una matriz numpy:

a = np.arange(10000, dtype=np.double) p = a.ctypes.data_as(POINTER(c_double)) p.contents c_double(0.0) 

sin embargo, necesito pasar el puntero, digamos, al elemento 100, sin copiar la matriz . Debe haber una manera fácil de hacerlo pero no se puede encontrar.

Cualquier sugerencia apreciada.

Cortar una matriz numpy crea una vista, no una copia:

 >>> a = numpy.arange(10000, dtype=numpy.double) >>> p = a[100:].ctypes.data_as(ctypes.POINTER(ctypes.c_double)) >>> p.contents c_double(100.0) >>> a[100] = 55 >>> p.contents c_double(55.0)