Как динамически выделять память для многомерного просмотра памяти внутри функции cdef с использованием массива CPython - PullRequest
1 голос
/ 26 мая 2020

Я пытаюсь использовать cython для работы и вывода (numpy) массива. Я прочитал сообщение , в котором объясняется, как это сделать, используя массив cpython. Например:

from cpython.array import array, clone
def int[:] foo1d(int m):
    cdef int[:] mv;
    cdef array template = array('i', [])
    mv = clone(template, m, True)
    return mv

Однако мне интересно, как это сделать для многомерного типизированного просмотра памяти. Например, я могу сделать это с помощью numpy:

import numpy as np
cimport numpy as np

cdef int[:,:] foo2d(int m, int n):
    cdef int[:,:] mv;
    mv = np.zeros((m, n), dtype=int)
    return mv

Но я не смог найти, как это сделать с cpython .array. Буду признателен за любую помощь и предложения.

...