This codealong has a nice explanation of many of the troubling aspects of functions.
lambda functions are touched on as well.
Do note that concepts like
**kwargs, and the
map function are used. While not especially pythonic, it is good to give students exposure to these concepts early on (if for no other reason than to help them avoid using these solutions if they encounter them on StackOverflow).