See ["/Introduction"] for an introduction to Boost::Python.
This page serves as a forum to gather peoples' experience and as a cookbook, as it is more dynamic by nature and open to contributors.
Various items:
- ["/Introduction"]
- ["/FAQ"]
- ["/module"] level: def,scope
- ["/class"]
- ["/extract"]
- ["/object"]
- ["/list"]
- ["/iterator"]
Tutorial:
- ["/Inheritance"]
Test cases:
From DavidAbrahams:
Boost.Python is designed with the idea in mind that users never touch a PyObject*.
Boost.Python depends on quite a few of the other boost libraries (possibly a few others):
- type_traits
- bind
- function
- mpl
- smart_ptr
IIUC, ["weave"] can be used for embedding nontrivial C++ code, if you're willing to stick it all inside one function body. Furthermore, tools like weave.blitz() can make an enormous difference by compiling an entire C++ expression template corresponding to an arbitrarily complicated Python expression. Surely that's nontrivial. It's definitely cool. I think weave offers enormous power to the person who's programming mostly in Python.