如何使用 pybind 访问结构的属性?

Yor*_*rch 2 c++ python pybind11

我使用 pybind 包装一些 C++ 函数,然后在 Python 中使用它。我需要一些结构,但我不知道如何在 Python 中访问其属性。我的结构没有仅方法属性,所以我认为绑定是这样的(也许这也是错误的):

py::class_<Struct_Sample>(m, "Struct_Sample");
Run Code Online (Sandbox Code Playgroud)

这是结构:

typedef struct Struct_Sample
{
   float time_ms;
   float frequency_mhz;
} Struct_Sample;
Run Code Online (Sandbox Code Playgroud)

如何访问Python中的属性?

Jan*_*ila 5

根据文档,您可以使用def_readwrite

py::class_<Struct_Sample>(m, "Struct_Sample")
    .def_readwrite("time_ms", &Struct_Sample::time_ms);
Run Code Online (Sandbox Code Playgroud)