CARVIEW |
Select Language
HTTP/2 200
date: Fri, 10 Oct 2025 10:06:22 GMT
content-type: text/html; charset=utf-8
content-encoding: gzip
cache-control: public, max-age=86400
referrer-policy: strict-origin-when-cross-origin
x-app-version: v251007-rb-251009-1112
x-content-type-options: nosniff
x-frame-options: SAMEORIGIN
x-xss-protection: 1; mode=block
x-middleware-rewrite: /coursesv4/learn-functional-programming-in-python
vary: RSC, Next-Router-State-Tree, Next-Router-Prefetch, Accept-Encoding
x-nextjs-cache: HIT
etag: W/"ud1q1xez1ccsva"
x-cloud-trace-context: af3fb75b2387f4ce02f4e613cb70e63e
via: 1.1 google
alt-svc: h3=":443"; ma=86400
cf-cache-status: MISS
set-cookie: __cf_bm=VBnaFER9q1GEKbtNcKsKBsRV4y07d7k8R5rysaA0iVU-1760090782-1.0.1.1-cXLfAHh4F5x2l7EvfggbttC56.gqM8qw6yLlnqASlTPHAR.n9qAc04CtCxZDZGD_.O39s_2Bkk1rWdWd1qgVN24yOCNvxSCw6ib.V1bFziE; path=/; expires=Fri, 10-Oct-25 10:36:22 GMT; domain=.educative.io; HttpOnly; Secure; SameSite=None
strict-transport-security: max-age=31536000; includeSubDomains; preload
server: cloudflare
cf-ray: 98c54dfeef48c19f-BLR
Learn Functional Programming in Python - AI-Powered Course
4.6
Beginner
5h
Updated 3 months ago
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.8M 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
95 Lessons12 Quizzes3 Assessments2 Challenges
1.
Introduction
5 Lessons
Get familiar with functional programming in Python, its characteristics, advantages, and challenges.
2.
Functions as Objects
8 Lessons
Discover the logic behind treating functions as first-class objects in Python.
3.
Mutability
6 Lessons
Break apart the concepts of mutability in Python, understanding both mutable and immutable objects.
4.
Recursion
8 Lessons
Break down complex ideas in recursion, factorials, limits, memoization, and list flattening.
5.
Closures
8 Lessons
Deepen your knowledge of closures, combining functions, and using functions versus classes.
6.
Iterators
13 Lessons
Focus on iterators, iterables, lazy evaluation, creating custom iterators, and built-in functions.
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.
10.
Generators
7 Lessons
Go hands-on with generators in Python, enhancing iterator creation and memory efficiency.
11.
Partial Application and Currying
10 Lessons
Grasp the fundamentals of closures, partial application, currying, and function composition 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 a 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.8 million developers working at companies
"These are high-quality courses. Trust me. I own around 10 and the price is worth it for the content quality. EducativeInc came at the right time in my career. I'm understanding topics better than with any book or online video tutorial I've done. Truly made for developers. Thanks"
Anthony Walker
@_webarchitect_
"Just finished my first full #ML course: Machine learning for Software Engineers from Educative, Inc. ... Highly recommend!"
Evan Dunbar
ML Engineer
"You guys are the gold standard of crash-courses... Narrow enough that it doesn't need years of study or a full blown book to get the gist, but broad enough that an afternoon of Googling doesn't cut it."
Software Developer
Carlos Matias La Borde
"I spend my days and nights on Educative. It is indispensable. It is such a unique and reader-friendly site"
Souvik Kundu
Front-end Developer
"Your courses are simply awesome, the depth they go into and the breadth of coverage is so good that I don't have to refer to 10 different websites looking for interview topics and content."
Vinay Krishnaiah
Software Developer
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!
Related Courses and Skill Paths
Free Resources
TRENDING TOPICS
LEGAL
Cookie Settings