We're sorry but this app doesn't work properly without JavaScript enabled. Please enable it to continue.
close

Learn Functional Programming in Python

Functional programming knowledge is critical to being a well-rounded developer. Learn the conceptual fundamentals in Python (yes, Python).

What will you learn?

Functional programming is back in vogue. There's a reason front-end frameworks like React and Vue are moving toward functional programming, and after this course you'll more than understand its benefits. We'll dive in-depth into all of the foundational concepts of functional programming in a familiar language.

Chapter List

1
What is Functional Programming?
Learn about the difference between OOP and functional styles, and what the real difference is: imperative vs. declarative
2
First Class Functions
First class and higher order functions are foundational to everything we do in the functional paradigm
3
Pure Functions
My favorite part of functional programming is the focus on pure functions that are easy to test and reason about
4
Recursion
While not unique to functional programming, recursion is a powerful tool that is used often when trying to avoid imperative code
5
Function Transformations
Learn how to transform functions into other functions to write more abstract and generalized code
6
Closures
Learn about encapsulating state within functions and how to use closures to write more expressive code
7
Currying
Learn to transform a function with multiple parameters into a series of functions with one parameter, and why you might want to do that
8
Decorators
Learn about Python's decorators and how they're essentially syntactic sugar for higher order functions
9
Sum Types
Learn about sum types, a powerful way to represent data that is used in many functional languages

Join 34,619 students in the Learn Functional Programming in Python course

Read reviews of their learning experiences

OOP is much better for me, but this helps to understand what is FP is and how to work with it!

(5/5)
Leonids Sama profile image

Leonids Sama

Latvia

Quite a challenge to pull through, definitely took a lot longer than previous courses. But those are positives in my opinion.

(5/5)
Jere Kukkohovi profile image

Jere Kukkohovi

Helsinki Metropolitan Area, Finland

If you don't know Python by hearth this course will be pure pain and suffering.

(2/5)
Some Cat profile image

Some Cat

Russia

Great course, it does a really good job of going into function programming in Python

(5/5)
marco pipes profile image

marco pipes

United States

Pretty tough course. But, this was done pretty well I would say. Definitely gotta practice more

(5/5)
Mohanad Osman profile image

Mohanad Osman

New York, USA

Very interesting and useful course, thank you so much! Concepts being taught here is tough and advanced, but really fascinating and important to learn

(5/5)
no name profile image

no name

Russia

I was taking this course on and off, which probably didn't help because this course was very difficult; this was not hard because I needed to learn new syntax, or I forgot how to use certain function: it was retraining my brain to reorganize my code into useful and pragmatic parts I could piece together whenever I need.

(5/5)
Donut Puncher profile image

Donut Puncher

United States

Quite a bit more challenging than previous module. Make sure you can do multiple lessons per chapter for this one.

(5/5)
Jan Van Den Eeckhout profile image

Jan Van Den Eeckhout

Belgium

A lot harder than OOP but still loved it.

(5/5)
Rafał  profile image

Rafał

Poland

Showing 1-9 of 766

or view more reviews

Mediocrity doesn't cut it anymore

The only way to become a great developer is to write a lot of code

Avoid tutorial hell

by writing a ton of code

Stay motivated with

a game-like curriculum

Build portfolio projects

to prove your skills

Delve deeper

into foundational concepts

Learn flexibly online

without interrupting your life

For 1% the price of college

to minimize your financial risk

Frequently asked Questions

Got questions? We've got answers

Yes! It's free to create an account and start learning. You'll get all the immersive and interactive features for free for a few chapters. After that, if you still haven't paid for a membership, you'll be in read-only (content only) mode.