LEARNING PATH: Python: Functional Programming with Python (Udemy.com)
Perceive functional programming with Python to efficiently solve real-world problems
Created by: Packt Publishing
Last updated May 2019
What you will 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
How it compares
Against the other 388 rated Udemy courses in Python on CourseDuck:
- Rating4.5 out of 5higher than 52% of them
- Reviews243#302 of 389 by number of reviews
- Length5.6 hoursshorter than 69% of them
- Last updatedMay 2019earlier than 82% of them
Course Description
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.
Instructor Details
- 4.5 Rating
243 Reviews
Packt Publishing
Packt are an established, trusted, and innovative global technical learning publisher, founded in Birmingham, UK with over eighteen years experience delivering rich premium content from ground-breaking authors and lecturers on a wide range of emerging and established technologies for professional development.
Packt’s purpose is to help technology professionals advance their knowledge and support the growth of new technologies by publishing vital user focused knowledge-based content faster than any other tech publisher, with a growing library of over 9,000 titles, in book, e-book, audio and video learning formats, our multimedia content is valued as a vital learning tool and offers exceptional support for the development of technology knowledge.
We publish on topics that are at the very cutting edge of technology, helping IT professionals learn about the newest tools and frameworks in a way that suits them.
More courses by Packt Publishing
Rust: Building Reusable Code with Rust from Scratch (2019)
4.5 (522 Reviews)
Provider: Udemy
Time: 6.3h
$59.99
More Python courses
Python 3: Deep Dive (Part 1 - Functional) (2024)
4.9 (13,534 Reviews)
Provider: Udemy
Time: 45.8h
$22.99
Python 3: Deep Dive (Part 3 - Dictionaries, Sets, JSON) (2023)
4.9 (1,996 Reviews)
Provider: Udemy
Time: 21.9h
$17.99
Programming for Everybody (Getting Started with Python)
4.9 (717 Reviews)
Provider: Coursera
Time: 12h
Free
An Introduction to Interactive Programming in Python (2013)
4.9 (554 Reviews)
Provider: Coursera
Time: 6h 40m
Free
Python: Python Programming Language | Tutorial | Beginner (2023)
4.9 (239 Reviews)
Provider: Udemy
Time: 5.1h
$19.99
An Introduction to Interactive Programming in Python (Part 2)
4.9 (225 Reviews)
Provider: Coursera
Time: 25h
Free
Reviews
By Jennifer Handsel on 12/5/2021
Sebastiaan's explanation and example of monads is extremely helpful. I haven't seen them explained in such a pythonic way before. Two other very useful takeaways are his demonstrations of decorators and memoization.
By Susmit Singh on 9/9/2021
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.
By David Paradice on 3/2/2021
Note that the second part of the course is exactly the Iterators in Functional Programming with Python course. I took that course before this one, so the second part of this course was redundant for me. Personally, I'm glad I saw the material on iterators before the material on functional programming, but maybe the order doesn't matter. I really like the pace and style of these courses. Sorry I didn't see the redundancy in the materials, though.
By Jahed on 12/1/2020
The instructor completely failed to teach anything clearly in his whole lecture. He probably is very good in python and only he understood what he is teaching. This class is of no value unless you are an expert like him.
By David Westen on 11/26/2020
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.
By Anonymized User on 1/20/2019
This is a very concise overview of functional programming fundamentals that also includes a helpful deep dive into how these can be used in Python.
By Marvin Hasenmayer on 12/3/2018
The course is really informative and explained really clean and straight forward. Maybe some exercises like: "transform taht OO program into a functional programmed prgram" would be nice. =)
By Franco A on 7/9/2018
Want to boost your Python skills? If yes, I can highly recommend this course. - Excellent structure (a bit of theory and then coding). - Superb instructor: coherent & knowledgeable. - Great coverage of Python skills, not only for functional programming. - Course NOT for beginners. Great course!
By Taylor Perkins on 6/7/2018
Overall, a great course!! The instructor gave great examples for comparisons between a dynamic and object oriented approach vs a fully functional processes. He did a great job of going line by line explaining his thought process, why he chose a certain approach, and what makes it functional. There are some great concepts in here, and I definitely learned some new concepts to put in my toolbelt.
By David Leek on 5/15/2018
The Jupyter notebooks provided represent one of the best resources I have ever had in a course for following along with the instructor, who does an excellent job of explaining when and when not to apply the techniques learned in this course.
Quality Score
No CourseDuck member has rated this course yet. Taken it? Give each part a thumbs up or down.
Overall Score : 90 / 100









