Object-Oriented Programming (OOP) With Python

Learning Path ⋅ Skills: OOP Fundamentals, Classes & Objects, Methods

OOP in Python 3

Object-oriented Programming, or OOP for short, is a programming paradigm which provides a means of structuring programs so that properties and behaviors are bundled into individual objects.

With this learning path you’ll get a solid grasp of the fundamentals of OOP in Python and how you can use this programming paradigm to make your programs easier to write and maintain.

Object-Oriented Programming (OOP) With Python

Learning Path ⋅ 7 Resources

OOP in Python 3

Course

Intro to Object-Oriented Programming (OOP) in Python

In this video course, you'll learn the fundamentals of object-oriented programming (OOP) in Python and how to work with classes, objects, and constructors.

(⭐ Basics)
13 Project Ideas for Intermediate Python Developers

Course

Pythonic OOP String Conversion: __repr__ vs __str__

In this video series you'll do a deep dive on how Python's to-string conversion using the __repr__ and __str__ "magic methods" works and how you can add implement them in your own classes and objects.

(⭐⭐ Intermediate)
Supercharge Your Classes With Python super()

Tutorial

Using Python's "super()" Function

In this step-by-step tutorial, you will learn how to leverage single and multiple inheritance in your object-oriented application to supercharge your classes with Python super().

(⭐⭐ Intermediate)
OOP in Python 3

Course

OOP Method Types in Python: @classmethod vs @staticmethod vs Instance Methods

What’s the difference between @classmethod, @staticmethod, and “plain/regular” instance methods in Python? You’ll know the answer after watching this video course.

(⭐⭐ Intermediate)
Operator and Function Overloading in Python

Tutorial

Operator and Function Overloading in Custom Python Classes

How to overload built-in functions and operators in your custom Python classes in order to make your code more Pythonic.

(⭐⭐ Intermediate)
Data Classes in Python 3.7 (And Above)

Tutorial

The Ultimate Guide to Data Classes in Python 3.7

Data classes are one of the new features of Python 3.7. With data classes you do not have to write boilerplate code to get proper initialization, representation and comparisons for your objects.

(⭐⭐ Intermediate)
Python Metaclasses and Metaprogramming

Tutorial

Python Metaclasses

How Python's metaclasses work as an OOP concept, what they are good for—and why you might want to avoid them in your own programs.

(⭐⭐⭐ Advanced)

Got feedback on this learning path?

« Browse All Learning Paths