pybind/pybind11

Not clear how to expose existing C++ vector as numpy array

Open

#1 042 ouverte le 30 août 2017

Voir sur GitHub
 (37 commentaires) (27 réactions) (0 assignés)C++ (2 005 forks)batch import
enhancementhelp wanted

Métriques du dépôt

Stars
 (14 677 stars)
Métriques de merge PR
 (Merge moyen 5j 2h) (10 PRs mergées en 30 j)

Description

This is a question of documentation rather than an issue. I can't find any example of the following very common scenario:

std::vector<int> some_func();
...
// We want to expose returned std::vector as a numpy array without copying
m.def("some_func", []() -> py::array {
   auto data = some_func();
   // What to do with data?? Map it with Eigen (then return what?), wrap somehow with py::buffer (how?)
})

I don't know the answer. It would be very nice to have this explained in docs since this scenario if rather common.

Guide contributeur