Numpy C-API ciągły błąd

0

Siema.
Próbuję napisać rozszerzenie w C++ do mojego Pythonowego projektu korzystając
dodatkowo z API Numpy.
Tylko, że po skompilowaniu rozszerzenia i wywołaniu funkcji w Pythonie, Python ciągle się crashuje.

To jest kod tej funkcji, nic skomplikowanego, napisałem to tylko dla testu, żeby zaznajomić się z API Numpy.

static PyObject* encode_one_hot(PyObject* self) {

	PyArrayObject* array = (PyArrayObject*)PyArray_Arange(0, 10, 1, NPY_INT);

	return Py_BuildValue("O", array);
}

Siedzę nad tym od paru godzin, nie mam już pojęcia co jest nie tak.
Przewertowałem różne rozwiązania ze stackoverflow i nic nie pomogło.

0

Dobra, problem rozwiązany - NARESZCIE.
W metodzie inicjującej moduł "PyMODINIT_FUNC" należy wywołać funkcję import_array() :D
Tylko nie wiem dlaczego coś takiego wywala nadal crash - mimo tego, że zawartość tablicy wyświetla poprawnie:

print(dataProcessing.encode_one_hot(labels))

A z kolei to już nie:

a = dataProcessing.encode_one_hot(labels)
print(a)

1 użytkowników online, w tym zalogowanych: 0, gości: 1