def similarity(self, a, b): """Returns string similarity in range 0 - 100%.""" try: # The C version (default) fails on unicode chars # see https://github.com/jamesturk/jellyfish/issues/55 try: distance = damerau_levenshtein_distance(a, b) except ValueError: distance = py_damerau_levenshtein_distance(a, b) except MemoryError: # Too long string, mark them as not much similar return 50 return int(100 * (1.0 - (float(distance) / max(len(a), len(b), 1))))
def similarity(self, first, second): """Returns string similarity in range 0 - 100%.""" try: try: distance = damerau_levenshtein_distance(first, second) except ValueError: # Needed on Python 2 only (actually jellyfish < 0.7.2) distance = py_damerau_levenshtein_distance(first, second) return int(100 * (1.0 - (float(distance) / max(len(first), len(second), 1)))) except MemoryError: # Too long string, mark them as not much similar return 50
def similarity(self, first, second): """Returns string similarity in range 0 - 100%.""" try: # The C version (default) fails on unicode chars # see https://github.com/jamesturk/jellyfish/issues/55 try: distance = damerau_levenshtein_distance(first, second) except ValueError: distance = py_damerau_levenshtein_distance(first, second) except MemoryError: # Too long string, mark them as not much similar return 50 return int( 100 * (1.0 - (float(distance) / max(len(first), len(second), 1))) )