File: class/Extras/Other/PriorClasses/schwab-sep12/person.py

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
    


    

    



[Home page] Books Code Blog Python Author Train Find ©M.Lutz