Functional Python Programming - Steven F. Lott

Functional Python Programming

Use a functional approach to write succinct, expressive, and efficient Python code

(Autor)

Buch | Softcover
576 Seiten
2022 | 3rd Revised edition
Packt Publishing Limited (Verlag)
978-1-80323-257-7 (ISBN)
42,35 inkl. MwSt
“Using this book has propelled my efficiency in solving leetcode challenges.” - Discord user, zizu
Python isn't all about object-oriented programming. Discover a valuable way of thinking about code design through a function-first approach – and learn when you need to use it. Now with detailed exercises at the end of every chapter!
Purchase of the print or Kindle book includes a free eBook in PDF format.

Key Features

Learn how, when, and why to adopt functional elements in your projects
Explore the Python modules essential to functional programming, like itertools and functools
Cover examples relevant to mathematical, statistical, and data analysis domains

Book DescriptionNot enough developers understand the benefits of functional programming, or even what it is. Author Steven Lott demystifies the approach, teaching you how to improve the way you code in Python and make gains in memory use and performance. If you’re a leetcoder preparing for coding interviews, this book is for you.
Starting from the fundamentals, this book shows you how to apply functional thinking and techniques in a range of scenarios, with Python 3.10+ examples focused on mathematical and statistical algorithms, data cleaning, and exploratory data analysis. You'll learn how 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.What you will learn

Use Python's libraries to avoid the complexities of state-changing classes
Leverage built-in higher-order functions to avoid rewriting common algorithms
Write generator functions to create lazy processing
Design and implement decorators for functional composition
Make use of Python type annotations to describe parameters and results of functions
Apply functional programming to concurrency and web services
Explore the PyMonad library for stateful simulations

Who this book is forThe functional paradigm is very 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.

Steven F. Lott has been programming since computers were large, expensive, and rare. Working for decades in high tech has given him exposure to a lot of ideas and techniques, some bad, but most are useful and helpful to others. Steven has been working with Python since the ‘90s, building a variety of tools and applications. He’s written a number of titles for Packt Publishing, include Mastering Object-Oriented Python, the Modern Python Cookbook, and Python Object-Oriented Programming, Fourth Edition. He’s a technomad, and lives on a boat that’s usually located on the east coast of the US. He tries to live by his mother’s words “Don’t come home until you have a story.”

Table of Contents

Understanding Functional Programming
Introducing Essential Functional Concepts
Functions, Iterators, and Generators
Working with Collections
Higher-Order Functions
Recursions and Reductions
Complex Stateless Objects
The Itertools Module
Itertools for Combinatorics – Permutations and Combinations
The Functools Module
The Toolz Package
Decorator Design Techniques
The PyMonad Library
The Multiprocessing, Threading, and Concurrent.Futures Modules
A Functional Approach to Web Services
Bonus Online Chapter

Erscheinungsdatum
Vorwort Ricardo Bánffy
Verlagsort Birmingham
Sprache englisch
Maße 191 x 235 mm
Themenwelt Mathematik / Informatik Informatik Software Entwicklung
ISBN-10 1-80323-257-9 / 1803232579
ISBN-13 978-1-80323-257-7 / 9781803232577
Zustand Neuware
Haben Sie eine Frage zum Produkt?
Mehr entdecken
aus dem Bereich
Entwurfsmuster für effektive Softwareentwicklung

von Karl Eilebrecht; Gernot Starke

Buch | Softcover (2024)
Springer Vieweg (Verlag)
19,99