#!/usr/bin/python class Error(Exception): pass class NegativeNumberError: pass class Number: def __init__(self, n): if n < 0: raise NegativeNumberError self.number = n def __add__(self, n): return Number(self.number+n.number) def __mul__(self, n): return Number(self.number*n.number) def __ne__(self, n): return self.number!=n.number def __eq__(self, n): return self.number==n.number def __repr__(self): return str(self.number) if __name__ == "__main__": try: m = Number(7) n = Number(9) print m+n print m*n print Number(-1) except NegativeNumberError: print "Negative numbers are not allowed!" except: print "Oops, I didn't catch that!"