Definition
In Python’s C API, a borrowed reference is a reference to an object. It does not modify the object reference count. It becomes a dangling pointer if the object is destroyed. For example, a garbage collection can remove the last strong reference to the object and so destroy it.
Calling Py_INCREF()
on the borrowed reference is
recommended to convert it to a strong reference in-place, except
when the object cannot be destroyed before the last usage of the borrowed
reference. The Py_NewRef()
function can be used to create a new
strong reference.