The easiest would be to first give cython a try, as it can provide a nice performance boost at a minimum effort in some cases.
If you just need to bind simple number crunching functions, you may also write a small library exposing them with c linkage, then access them using ctypes.
For more advanced usage, you will probably benefit from using a binding framework instead of using the python c api.
If you just need to bind simple number crunching functions, you may also write a small library exposing them with c linkage, then access them using ctypes.
For more advanced usage, you will probably benefit from using a binding framework instead of using the python c api.