The @abstractmethod Decorator

Medium Abstraction & Interfaces
Solve in Playground →

Problem Statement

Update `Shape` (inheriting from `abc.ABC`) to include a method `area(self)` decorated with `@abc.abstractmethod`. Try to instantiate `Shape` in a try-except block. Catch the `TypeError` and print ‘Cannot instantiate abstract class’.

Input Format

None

Output Format

Print the exact error message.

Constraints

None

Sample Output

Cannot instantiate abstract class

Explanation

Adding an @abstractmethod explicitly forbids the direct instantiation of the base class.

Starter Code

import abc

class Shape(abc.ABC):
    # Define the abstract method 'area' here
    pass

if __name__ == '__main__':
    # Use try-except to catch instantiation error
    pass

Limits

  • Time Limit: 1s
  • Memory Limit: 256MB

Embedded C Programming

Updated: March 15, 2026
Intermediate

Embedded systems rely on efficient low-level programming to interact directly with hardware. In this course, you will learn how to write practical Embedded C programs used in real microcontroller-based systems. Rather than focusing only on theory, this course follows a practice-driven approach. Each lesson includes hands-on coding exercises that simulate real firmware development tasks used