Case Study: Building Software in Python
Mark Pedigo
Principal Data Scientist
BasicCalculator()
FinancialCalculator
BasicCalculator
class BasicCalculator:
def multiply(self, x, y):
result = x * y
return result
...
# Child of BasicCalculator
class FinancialCalculator(BasicCalculator):
def monthly_interest(self, annual_interest_rate):
return self.divide(annual_interest_rate, 12)
...
BasicCalculator
to FinancialCalculator
to MortgageCalculator
super()
without directly naming the parent classclass Animal:
def __init__(self, name):
self.name = name
class Dog(Animal):
def __init__(self, name):
# super calls __init__
# method from parent class
super().__init__(name)
Case Study: Building Software in Python