python - 使用 ctypes 在 C 中调整 numpy 数组的大小
问题描述
我正在ndarray
使用 ctypes 将 numpy 传递给 C 函数:
lib = np.ctypeslib.load_library('library', 'path/to/library.so')
lib.function.argtypes = [ numpy.ctypeslib.ndpointer(ndim=1, dtype=numpy.float64, flags='C,A,W') ]
lib.function.restype = None
arr = numpy.zeros((10), dtype=numpy.float64)
lib.function(arr)
使用以下 C 函数:
void function(double *arr)
{
arr = (double *) realloc(arr, 20 * sizeof(double));
}
但是,数组保持原来的大小。有没有一种简单的方法可以让 numpy 数组在使用时改变大小numpy.ctypeslib.ndpointer
?
解决方案
推荐阅读
- javascript - Chart.js 为混合字体样式自定义刻度标签
- angular - 没有在动态组件上调用 ngOnInit
- .net - 尝试执行 POST 请求但收到错误 500,我需要证书文件吗?
- django - 覆盖 Django 的 DurationField 显示
- dax - 当值大于时如何获取 MIN 值(或者如果有一种方法可以计算 2012 年的中位数)
- vue.js - 有没有办法让 NUXT.JS 在我的 CSP 标头中没有“不安全内联”的情况下工作?
- firebase - 问题将元素添加到列表
- sql - 将 Big Query 中的嵌套数据展平为单行
- html - 为什么两种字体显示相同字体大小的不同高度的文本?
- java - 使用SDK清除Azure门户中定义的容器的现有策略后,如何上传新创建的sharedAccessPolicy?