HomeCoursesLearn Functional Programming in Python
4.6

Beginner

5h

Updated yesterday

Learn Functional Programming in Python

Gain insights into functional programming in Python, learn about functions as objects, recursion, closures, and generators, and discover how to confidently apply these concepts to your projects.
Join 2.7 million developers at
Overview
Content
Reviews
Related
The functional programming paradigm can be a powerful tool, especially as it can be integrated seamlessly with procedural and object-oriented code in Python. In this course, you’ll learn what functional programming is, how it’s used, and the features of Python that support it. To start, you’ll learn how functions act as objects, the role of mutability, and how to perform recursion. In the latter half of the course, you’ll focus on closures, iterables & iterators, generators, and more. Throughout the course will be three exams which will test your understanding and really drive home what you’ve learned. By the end, you’ll have a new programming paradigm to add under your belt and have the confidence to start using functional programming in your own projects.
The functional programming paradigm can be a powerful tool, especially as it can be integrated seamlessly with procedural and ob...Show More

WHAT YOU'LL LEARN

Learn to implement functional programming in Python.
Understand the pros and cons of functional programming in Python.
Master the ways to obtain function objects.
Grasp the concept of mutability and recursion in Python.
Acquire skill of using closures as function factories.
Learn to differentiate between iterators and iterables.
Become competent in creating, reducing, and transforming iterables.
Master list comprehensions and generator comprehensions.
Implement function composition and partial application.
Get familiar with functors, applicatives, and monads.
Learn to implement functional programming in Python.

Show more

TAKEAWAY SKILLS

Recursion

Functional Programming

Mutability

Closures

Iterators

Transforming Iterables

Reducing Iterables

Comprehensions

Generators

Partial Application

Currying

Functors

Monads

Content

4.

Recursion

8 Lessons

Break down complex ideas in recursion, factorials, limits, memoization, and list flattening.

7.

Transforming Iterables

9 Lessons

Build on Python functions like enumerate, zip, filter, and map for iterable transformations.

8.

Reducing Iterables

7 Lessons

Step through Python's reducing functions to transform iterables into single outcomes efficiently.

9.

Comprehensions

5 Lessons

Get started with creating lists using comprehensions, conditions, and nested structures in Python.

12.

Functors and Monads

6 Lessons

Deepen your knowledge of functors, applicative functors, and monads in functional programming.

13.

Useful Libraries

2 Lessons

Simplify complex topics in Python with Itertools, Functools, PyMonad, and Oslash libraries.

14.

Conclusion

1 Lessons

Build on your functional programming skills with key concepts and continued exploration.
Certificate of Completion
Showcase your accomplishment by sharing your certificate of completion.

Course Author:

Developed by MAANG Engineers
Every Educative lesson is designed by our in-house team of ex-MAANG software engineers and PhD computer science educators, and developed in consultation with developers and data scientists working at Meta, Google, and more. Our mission is to get you hands-on with the necessary skills to stay ahead in a constantly changing industry. No video, no fluff. Just interactive, project-based learning with personalized feedback that adapts to your goals and experience.

Trusted by 2.7 million developers working at companies

Hands-on Learning Powered by AI

See how Educative uses AI to make your learning more immersive than ever before.

AI Prompt

Build prompt engineering skills. Practice implementing AI-informed solutions.

Code Feedback

Evaluate and debug your code with the click of a button. Get real-time feedback on test cases, including time and space complexity of your solutions.

Explain with AI

Select any text within any Educative course, and get an instant explanation — without ever leaving your browser.

AI Code Mentor

AI Code Mentor helps you quickly identify errors in your code, learn from your mistakes, and nudge you in the right direction — just like a 1:1 tutor!

Free Resources

FOR TEAMS

Interested in this course for your business or team?

Unlock this course (and 1,000+ more) for your entire org with DevPath