Functional programming has some benefits, and the author, Steven Lott, wants to teach how to improve the way you code in Python and make gains in memory use and performance. 

Starting from the fundamentals, this book shows you how to apply functional thinking and techniques in various scenarios, with Python 3.10+ examples focused on mathematical and statistical algorithms, data cleaning, and exploratory data analysis. You'll learn to use generator expressions, list comprehensions, and decorators to your advantage. You don't have to abandon object-oriented design completely, though – you'll also see how Python's native object orientation is used in conjunction with functional programming techniques.

By the end of this book, you'll be well-versed in the essential functional programming features of Python and understand why and when functional thinking helps. You'll also have all the tools you need to pursue any additional functional topics that are not part of the Python language.

The functional paradigm can be useful for programmers working in data science or preparing for technical interviews, but any Python developer who wants to create more reliable, succinct, and expressive code will have much to learn from this book.

No prior knowledge of functional programming is required to get started, though Python programming knowledge is assumed. A running Python environment is essential.

Table of Contents
  1. Understanding Functional Programming
  2. Introducing Essential Functional Concepts
  3. Functions, Iterators, and Generators
  4. Working with Collections
  5. Higher-Order Functions
  6. Recursions and Reductions
  7. Complex Stateless Objects
  8. The Itertools Module
  9. Itertools for Combinatorics – Permutations and Combinations
  10. The Functools Module
  11. The Toolz Package
  12. Decorator Design Techniques
  13. The PyMonad Library
  14. The Multiprocessing, Threading, and Concurrent.Futures Modules
  15. A Functional Approach to Web Services
  16. Bonus Online Chapter

Our evaluation:

Rating: 4.5

Author: Steven F. Lott

ISBN: 978-1803232577

Edition: 2022, 3rd

Publisher: Packt Publishing

Pages: 576