abc — Easy Playground
Abstract Base Classes: define interfaces subclasses must implement
Python Playground
from abc import ABC, abstractmethod
class Shape(ABC):
@abstractmethod
def area(self):
pass
@abstractmethod
def perimeter(self):
pass
class Circle(Shape):
def __init__(self, radius):
self.radius = radius
def area(self):
return 3.14159 * self.radius ** 2
def perimeter(self):
return 2 * 3.14159 * self.radius
c = Circle(5)
print(f"Area: {c.area():.2f}")
print(f"Perimeter: {c.perimeter():.2f}")
Output
Click "Run" to execute your code
The abc module is part of Python's standard library. Abstract Base Classes: define interfaces subclasses must implement.
Challenge
Try modifying the code above to explore different behaviors. Can you extend the example to handle a new use case?