# Exercise 3A # Standardising surnames. # # Author: David Watt. mc = "M'c" def standardise (surname): "Return surname with the prefix 'Mc' or 'Mac' replaced by mc (above)." l = len(surname) if l > 2 and surname[0:2] == 'Mc': return mc + surname[2:] elif l > 3 and surname[0:3] == 'Mac': return mc + surname[3:] else: return surname def compare (surname1, surname2): "Return -1 if surname1 should come before surname2, \ or +1 if it should come after, or 0 if they are the same." s1 = standardise(surname1) s2 = standardise(surname2) if s1 == s2: return 0 elif s1 < s2: return -1 else: return 1