pybind11 VS PyO3

Compare pybind11 vs PyO3 and see what are their differences.

pybind11

Seamless operability between C++11 and Python (by pybind)

PyO3

Rust bindings for the Python interpreter (by PyO3)
Our great sponsors
  • OPS - Build and Run Open Source Unikernels
  • SonarQube - Static code analysis for 29 languages.
  • Scout APM - Less time debugging, more time building
pybind11 PyO3
22 45
10,326 5,244
2.1% 4.4%
9.4 9.8
1 day ago 6 days ago
C++ Rust
GNU General Public License v3.0 or later GNU General Public License v3.0 or later
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.

pybind11

Posts with mentions or reviews of pybind11. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2022-01-12.

PyO3

Posts with mentions or reviews of PyO3. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2022-01-11.

What are some alternatives?

When comparing pybind11 and PyO3 you can also consider the following projects:

rust-cpython - Rust <-> Python bindings

setuptools-rust - Setuptools plugin for Rust support

sparsehash - C++ associative containers

milksnake - A setuptools/wheel/cffi extension to embed a binary data in wheels

Optional Argument in C++ - Named Optional Arguments in C++17

PEGTL - Parsing Expression Grammar Template Library

bincode - A binary encoder / decoder implementation in Rust.

rust-numpy - PyO3-based Rust binding of NumPy C-API

py2many - Python to CLike languages transpiler

egui - egui: an easy-to-use immediate mode GUI in pure Rust

sparsehash-c11 - Experimental C++11 version of sparsehash