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

Learn Object Oriented Programming in Python

Use classes when they help, skip the complexity when they don't, and learn OOP as a practical way to organize code.

Browse Lessons (read-only)

What will you learn?

Learn the fundamentals of the most widely-used programming paradigm today: object-oriented programming. You will model real-world problems within your programs, and learn how to write code that is easy to understand and maintain. By the end of this course you'll be writing production-quality Python code.

Chapter List

1
Clean Code
Understand why we have programming paradigms in the first place, and how they help us write more maintainable code
2
Classes
Learn about classes and objects, and how OOP differs from a functional programming paradigm.
3
Encapsulation
Learn how to write cleaner code by encapsulating data and methods.
4
Abstraction
Abstraction is a powerful tool that will make your code more robust and reusable.
5
Inheritance
The crux of OOP is the ability to inherit data and behaviors from other classes
6
Polymorphism
Polymorphism is one of the best ideas we've had as developers, learn how it works.

Join 54,908 students in the Learn Object Oriented Programming in Python course

Read reviews of their learning experiences

Some description is confusing. It can be much more simplified. Code examples are good

(4/5)
Xianxian Zhou profile image

Xianxian Zhou

United States

Nice

(5/5)
Anton Dzenisiuk profile image

Anton Dzenisiuk

Brest, BY

kwazzy kwazzy

(5/5)
Rishi Saraogi profile image

Rishi Saraogi

India

I liked it, though it fills me with a bit of dread knowing everything we DIDN'T cover here. These are big topics and there's much more to them.. one thing at a time I suppose.

(5/5)
Ismar Iljazovic profile image

Ismar Iljazovic

Zurich, Switzerland

A lot of fun and great to understand complex topics, as always!

(5/5)
Vicente Labbe profile image

Vicente Labbe

Chile

It was very challenging but rewarding. Would recommend!

(4/5)
Isaiah  profile image

Isaiah

United States

perfectly explained polymorphism in a simple manner.

(5/5)
Kourosh Sarabadani profile image

Kourosh Sarabadani

genova

it's starting to get harder

(4/5)
Harry  profile image

Harry

London

This was challenging even though I have already done some OOP they give you definitely enough exercises to really drive the points of OOP practices in python and leaving general guideline to use in other languages

(5/5)
James Gillis profile image

James Gillis

United States

Showing 1-9 of 1273

Browse Lessons (read-only)

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.