Course Information
Course Overview
Perceive functional programming with Python to efficiently solve real-world problems
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.
Packt’s 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, you’ll learn what functional programming is, and how it differs from other programming styles, such as procedural and object-oriented programming. Then you’ll go on to explore lambda expressions, which are short one-line functions, and are the purest form of functional programming that Python offers. Next, you’ll learn about higher-order functions: functions that accept other functions as an argument, or return other functions as return values. You’ll 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 you’ll see how they are elegantly supported by the language.
Further, you’ll 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. You’ll learn about all standard iterators and iterator functions that Python offers. You’ll also learn to implement your own iterators. Functional programming makes heavy use of iterators, and you’ll 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:
SebastiaanMathôt 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.
Course Content
- 2 section(s)
- 45 lecture(s)
- Section 1 Functional Programming in Python
- Section 2 Iterators in Functional Programming with Python
What You’ll Learn
- Higher-order functions and Lambda expressions (nameless functions)
- Error handling in Functional Programming
- Understand common functional design patterns, and how these apply to Python
- Understand what an iterator is in Python
- Iterators and iterator functions built into Python
- Create your own iterators
- Understand what a generator coroutine is
- Master list and dict comprehensions and generator expressions
Skills covered in this course
Reviews
-
SSHAman256
Yes, it is direct to the details and as long as you follow along duplicating the demonstrations yourself you learn and review plenty of material.
-
SSusmit Singh
This course sets the benchmark for how courses should be, precise, accurate, informative and illustrative. I love the precise and no fuss and fillers delivery and tone of the speaker/teacher of this course. Much respect and love to you sir. This course will teach you more in 5hours than you can learn in twice or thrice the time in other courses.
-
KKrishna Kumar
a nice introduction to functional programming. i enjoyed learning.
-
DDavid Westen
This course was excellent! I believe it has taken me to the next level as a Python programmer. The teacher is a university professor and it shows ... his descriptions are clear and accurate. My only complaint is with the quizzes. There was one question on the first quiz that was not covered until the 2nd half of the course and one question on the second quiz where I believe the answer was wrong ... if it was correct, the subject was not covered.