Python is not a functional programming language, but it is a multi-paradigm language that makes functional programming easy to perform, and easy to mix with other programming styles. Python is a high level language used in many development areas, like web development, data analysis, desktop UI and system administration. Functional programming is a style of programming that is characterized by short functions, lack of statements, and little reliance on variables. You will learn what functional programming is, and how you can apply functional programming in Python. If you’re interested to use Functional Programming as a powerful tool to solve many real-world problems by writing robust and bug-free code, then go for this Learning Path. Packts Video Learning Paths are a series of individual video products put together in a logical and stepwise manner such that each video builds on the skills learned in the video before it. The highlights of this Learning Path are: Understand common functional design patterns, and how these apply to Python Learn the important role that iterators play in functional programming In this Learning Path, youll learn what functional programming is, and how it differs from other programming styles, such as procedural and object-oriented programming. Then youll go on to explore lambda expressions, which are short one-line functions, and are the purest form of functional programming that Python offers. Next, youll learn about higher-order functions: functions that accept other functions as an argument, or return other functions as return values. Youll also encounter important concepts from functional programming, such as monads, currying, statelessness, side-effects, memorization, and referential transparency; these concepts may initially seem odd to Python programmers, but youll see how they are elegantly supported by the language. Further, youll learn everything there is to know about iterators in Python and how crucial they are in functional programming, where they are used, among other things, to implement repetitive logic and coroutines. Youll learn about all standard iterators and iterator functions that Python offers. Youll also learn to implement your own iterators. Functional programming makes heavy use of iterators, and youll learn how you can use them in functional programming through an interactive calculator application. By the end of this Learning Path, you will get a thorough understanding of iterators to solve many real-world problems by writing robust, testable, and bug-free code. Meet Your Expert: We have combined the best works of the following esteemed authors to ensure that your learning journey is smooth: SebastiaanMatht currently works as assistant professor at the University of Groningen in the Netherlands. He is the lead developer at OpenSesame, which is an open-source, Python-based program for implementing psychology and neuroscience experiments. Sebastiaan is also the designer of DataMatrix, a Python library for numeric computing that is focused on elegance and readability. Sebastiaan also gives regular workshops on using OpenSesame and Python for scientific purposes, and regularly publishes Python tutorials on his YouTube channel. As such, he has extensive experience in teaching Python and making advanced topics seem as easy as possible.