Commit 35dbe40e authored by Mathieu-Duran's avatar Mathieu-Duran
Browse files

fonction jaccard, fonction de renvoie d'ensemble de mot d'un texte et test unitaire

parent a8aa0aef
......@@ -32,10 +32,30 @@ def levenshtein(word1,m,word2,n):
#Retour de la distance de Levenshtein
return lev[m][n]
#Calcul de la distance de Jaccard
def jaccard(list1,list2):
indiceJ = len(set(list1).intersection(list2))/len(set().union(list1,list2))
return 1-indiceJ
def listWord(text):
x = text.split("'")
for i , element in enumerate(x):
x[i]= element+"'"
x[-1]= x[-1][:-1]
textlist = []
for i in x:
textlist += i.split()
print(textlist)
return textlist
#Prend les 2 premiers texte en argument sinon demande à l'utilisateur d'insérer 2 textes
if (len(sys.argv)>=3):
levenshtein(sys.argv[1],len(sys.argv[1]),sys.argv[2],len(sys.argv[2]))
else:
word1 = input("Premier mot : ")
word2 = input("Second mot : ")
levenshtein(word1,len(word1),word2,len(word2))
#A = listWord("j'adore cette matière")
#B = listWord("je déteste l'algo du texte")
#print(jaccard(A,B))
#if (len(sys.argv)>=3):
# levenshtein(sys.argv[1],len(sys.argv[1]),sys.argv[2],len(sys.argv[2]))
#else:
# word1 = input("Premier mot : ")
# word2 = input("Second mot : ")
# levenshtein(word1,len(word1),word2,len(word2))
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment