Suppose we are working on a suite of programs for carpenters who want to work with fractions, e.g 3/4 of an inch, 5/16 of an inch and so on. Not surprisingly our design of this suite calls for a <code>Fraction</code> class. Of course with one eye on the future we don't want to just handle the fractions common in carpentry we want a general <code>Fraction</code> class we will be able to reuse in many settings. We'd like to be able to do things like this,
>>> d1 = Fraction(2,5)
>>> print d1
2/5
>>> d2 = Fraction(4)
>>> print d2
4/1
>>> d3 = d1 + d2
>>> print d3
22/5
>>> if d1 <= d2:
print 'd1 is less than or equal to d2'
else:
print 'd2 is greater than d1'
d2 is greater than d1
>>> print d1[0], d1[1]
2 5
>>> print d1 + 2
12/5
>>> print d1 - 2
-8/5
>>>