Home › coding › python › py abstract classes

Py Abstract Classes — Free Python Tutorial

Learn Py Abstract Classes in Python with a free, beginner-friendly tutorial, examples and practice for Indian students on Syllab.in.

✓ 100% Free ✓ No Login Needed ✓ NCERT / CBSE Aligned ✓ Download as PDF

TL;DR: Learn Py Abstract Classes in Python with a free, beginner-friendly tutorial, examples and practice for Indian students on Syllab.in.

Written & reviewed by the Syllab.in Academic Team (CBSE/NCERT subject experts) · Updated Jul 14, 2026

🤖 Stuck on any question? Ask Syllab's free AI Tutor for a step-by-step explanation — instant, unlimited, no login.

Py Abstract Classes in Python

An abstract class defines a blueprint that subclasses must implement. Python's abc module provides @abstractmethod decorator — any class with abstract methods cannot be instantiated.

Subclasses that don't implement all abstract methods also become abstract. This enforces a contract: every Shape MUST have area() and perimeter().

Abstract classes can also contain concrete methods (shared logic). Python doesn't have a separate "interface" keyword — abstract classes with only abstract methods serve as interfaces.

Py Abstract Classes — Syntax

from abc import ABC, abstractmethod

class Shape(ABC):
    @abstractmethod
    def area(self) -> float: pass    # must override

    def describe(self):              # concrete — shared
        return f"Area = {self.area():.2f}"

Learn Py Abstract Classes step by step with Syllab's free interactive Python tutorial — runnable code examples, practice exercises and instant AI feedback, all free with no signup. Explore the full Python course →

Explore:

  • Syllabus
  • Practice
  • Mock Tests
  • NCERT Solutions
  • Coding
  • GK Quiz
  • Career Predictor
  • AI Tutor
  • Live Quiz
  • Doubt Solver
  • Microlearning
  • Free Alternatives
  • Kids Zone
  • Study Room
  • Calculators
  • Worksheets

Syllab.in — Free learning for Indian students, Class 1–12