Python numpy 模块,ctypeslib() 实例源码
我们从Python开源项目中,提取了以下2个代码示例,用于说明如何使用numpy.ctypeslib()。
def __new__(cls, ctypesArray, shape, dtype=float,
strides=None, offset=0, order=None):
# some magic (copied from numpy.ctypeslib) to make sure the ctypes array
# has the array interface
tp = type(ctypesArray)
try:
tp.__array_interface__
except AttributeError:
ctypeslib.prep_array(tp)
obj = numpy.ndarray.__new__(cls, shape, dtype, ctypesArray, offset, strides,
order)
# keep track of the underlying storage
# this may not be strictly necessary as the same info should be stored in .base
obj.ctypesArray = ctypesArray
return obj
def memcpy_dtoh(self, dest, src):
"""a simple memcpy expects a ctypes pointer, returns a numpy array
:param dest: A numpy array to store the data
:type dest: numpy.ndarray
:param src: A ctypes pointer to some memory allocation
:type src: ctypes.pointer
"""
dest[:] = numpy.ctypeslib.as_array(src, shape=self.arg_mapping[str(src)])