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

Read reviews of their learning experiences

Fun course and definetly helped me learn OOP

(5/5)
Maq  profile image

Maq

United States

Very hard but very full

(5/5)
M.Mehdi Akramzadeh profile image

M.Mehdi Akramzadeh

Turin, Italy

the cartesian coordinate stuff was proper confusing, but other than that, fantastic course. for a newbie, it would be confusing jumping into this from the data analyst path, since a lot of methods were not really explained. some heavy assumptions are made regarding previous python knowledge

(5/5)
Tarun Badipalli profile image

Tarun Badipalli

India

It's the best course I've ever tried! Definitely going to keep learning until the end of the every course!

(5/5)
CRYSTAL NG JING XIN Moe profile image

CRYSTAL NG JING XIN Moe

Malaysia

Instructions were unclear many times and was frustrating. Course taught me a lot though!

(5/5)
Carson  profile image

Carson

United States

It's easy to understand the basic concept of OOP, and I think it's interesting to do small practices with game context. I enjoyed taking this course.

(4/5)
Bencolie  profile image

Bencolie

France

A lot of nice practice at first, but the ending is pure drudgery. Too much having to solve problems with clever thinking instead of learning. Nice theme, but I am not interested in game play mechanics, so I can't think that way. Luckily I had plenty seer stones to make it through and not have to think cleverly.

(4/5)
thomas peters II profile image

thomas peters II

United States

Great overview of Object Oriented Programming. Exactly the refresh I needed!

(5/5)
Sam  profile image

Sam

Canada

Not so challenging course

(4/5)
Baveet Singh  profile image

Baveet Singh

United States

Showing 1-9 of 1554

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.