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.
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
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 →