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.

What you'll learn in this Python course

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 61,996 students in the Learn Object Oriented Programming in Python course

Read reviews of their learning experiences

Amazing course!

(5/5)
Mallory Antomarchi profile image

Mallory Antomarchi

Australia

very hard but learned a lot

(4/5)
kasem  profile image

kasem

Palestinian Territories

As usual, love the hands on part! This is the most concise yet practical way to OOP that covers literally everything one needs to know.

(5/5)
Kamil Aliev profile image

Kamil Aliev

Germany

This course was hard but I loved it

(5/5)
Jonasz Grzybek profile image

Jonasz Grzybek

Poland

Excellent course! Basics of OOP is important and the exercises provide quite challenge!

(5/5)
Fernando Cardozo profile image

Fernando Cardozo

Paraguay

Super useful topics within this course Already leant so much with lots more to go Be prepared! Some of the lessons will throw you an absolute curve ball but... "if it was easy, everyone would do it" Keep saying that to yourself and the hard times will be valuable lessons in why you started this journey

(5/5)
Duvall Flandrin profile image

Duvall Flandrin

United Kingdom

Good course, but some of the explanations are not the best

(3/5)
Charles Benfield profile image

Charles Benfield

Spain

Good baseline for OOP

(5/5)
griffMcTall  profile image

griffMcTall

Canada

Never before have I understood Object-Oriented Programming as much as I do now. This course helps lay out, fundamentally, how to use OOP effectively and why OOP is useful. 5 Stars, definitely worth.

(5/5)
Penzil Bigley profile image

Penzil Bigley

United States

Showing 1-9 of 1533

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

It's a way to organize code by grouping data and the functions that work on it into classes. Python supports it fully, but doesn't force it on you, so knowing when a class helps and when it just adds complexity is something we talk about in the course.