Functional programming with Python : techniques for maintainable, modular, and testable Python code - Armstrong, Chris (O'Reilly, 2015)
"In this Functional Programming with Python training course, expert author Chris Armstrong will teach you functional programming techniques for making maintainable, modular, and testable code. This course is designed for users that already have experience with Python. You will start by learning about functional programming, including first class functions, recursion, and modifying data structures. From there, Chris will teach you about many functional programming libraries available in the Python ecosystem. This video tutorial will then teach you how to implement a text adventure game using these techniques and libraries. You will also learn how to write unit tests for functional code, use imperative libraries in a functional way, and use first-class effects. Finally, you will create a web UI for the game, and learn how to isolate an imperative web framework so that all of the application logic remains purely functional. Once you have completed this computer based training course, you will have learned how to apply these functional programming techniques to create maintainable, modular, and testable Python code."--Resource description page.