Чтобы ответить на вопрос в более общем виде, вы можете прикрепить любую функцию c ++, имеющую правильную подпись, к экспорту python в объявлении class_
предположим, что класс foo:
struct foo
{
//class stuff here
}
Вы можете определить свободную функцию, которая принимает ссылку на foo в качестве первого аргумента:
int do_things_to_a_foo(foo& self, int a, std::string b, other_type c)
{
//Do things to self
}
И экспортируйте это как член foo:
class_<foo>("foo")
...
.def("do_things_to_a_foo", &do_things_to_a_foo)
...
;