Saturday, January 16, 2021

String comparisons using difflib

import difflib


def sim(s1, s2):

  result =  difflib.SequenceMatcher(a=s1.lower(), b=s2.lower())

  return result.ratio()


print(sim("Python Exercises", "Python Exercises"))      # 1.0 

print(sim("Python Exercises", "Python Exercise"))       # 0.967742 

print(sim("Python Exercises", "Python Ex."))            # 0.69230769

print(sim("Python Exercises", "Python"))                # 0.545454545

print(sim("Python Exercises", "Java Exercises"))        # 0.6666666667



# https://www.youtube.com/watch?v=OIJBKqzrlX0

import difflib

words = ["i", "like", "dogs", "dog", "hockey"]

def wordCheck(s):
  for word in s.lower().split():
    if word not in words:
      suggest = difflib.get_close_matches(word, words)
      print(f'Did you mean {" / ".join(str(x) for x in suggest)} instead of {word}?')

s = input("Input a string: ")
wordCheck(s)

No comments:

Post a Comment