Python Inner Functions: What They Are Good For
The article explains that Python inner functions can read names from an enclosing scope, which lets them work with variables outside their own body. It also shows how inner functions help create stateful closures and how they are used to build decorators, which are functions that modify other functions.