I would split your code such that the Q&A is seperated from the
calculations, and I would model the bill something like :
class allbills(object):
def __init__(self, bill, tip):
self._bill = bill
self._tip = tip
def gettip(self):
return self._tip / 100.0
tip = property(gettip)
def gettotal(self):
return self._bill * (1 + self.tax + self.tip)
total = property(gettotal)
def __repr__(self):
return 'tip = %.2f, tax = %.2f, total = %.2f ' % \
(self.tip, self.tax, self.total)
class usbill(allbills):
def __init__(self, bill, tip):
super(usbill, self).__init__(bill, tip)
def gettax(self):
return 0.0675
tax = property(gettax)
class chicago_bill(allbills):
def __init__(self, bill, tip):
super(chicago_bill, self).__init__(bill, tip)
def gettax(self):
return 0.0725
tax = property(gettax)
--
http://mail.python.org/mailman/listinfo/python-list