class Person: "stuff goes here" def __init__(self, name, job=None, pay=0): self.name = name self.job = job self.pay = pay def lastName(self): return self.name.split()[-1] def giveRaise(self, percent): "percent must be 0..1" self.pay *= (1.0 + percent) def __str__(self): return '[Person: %s, %s]' % (self.name, self.pay) class Manager(Person): def __init__(self, name, pay): Person.__init__(self, name, 'mgr', pay) def giveRaise(self, percent, bonus=.10): Person.giveRaise(self, percent + bonus) if __name__ == '__main__': bob = Person('Bob Smith') sue = Person('Sue Jones', job='dev', pay=100000) print bob print sue print bob.lastName() sue.giveRaise(.10) print sue tom = Manager('Tom Jones', 50000) print tom.lastName() tom.giveRaise(.10) print tom