Skip to content
Home Tutorials Roadmaps Courses
Log in Join free
Tutorials Python Classes
Python Beginner FREE

Classes

Lesson 1 of 14 Beginner Interactive

Classes are blueprints for objects. __init__() is the constructor; self refers to the instance.

Inheritance

Child classes reuse parent behavior. Use super().__init__() for parent constructor.

Polymorphism

Different classes share the same interface. Python uses duck typing.

Syntax

PYTHON
class Dog:
    def __init__(self, name, breed):
        self.name = name
        self.breed = breed
    def bark(self): return f"{self.name} says Woof!"

class Animal:
    def speak(self): raise NotImplementedError

class Cat(Animal):
    def speak(self): return f"{self.name} says Meow!"
ES6 Classes
JAVASCRIPT
class Animal {
    constructor(name, sound) {
        this.name = name;
        this.sound = sound;
    }

    speak() {
        return this.name + " says " + this.sound;
    }
}

class Dog extends Animal {
    constructor(name) {
        super(name, "Woof");
    }

    fetch() {
        return this.name + " is fetching!";
    }
}

let dog = new Dog("Buddy");
console.log(dog.speak());
console.log(dog.fetch());

Practice

1
Exercise

Create a Student class with name, grades, and GPA method.

Answer
class Student:
    def __init__(self, name):
        self.name = name
        self.grades = []
    def add_grade(self, g): self.grades.append(g)
    def gpa(self): return sum(self.grades)/len(self.grades) if self.grades else 0

Quick Quiz

1

What does self represent?

self refers to the current instance.

Interview Questions

Instance vars (self.x) are per-object. Class vars are shared across all instances.