J'ai vérifié les documents de difflib et je suis confus sur la façon dont difflib.SequenceMatcher.ratio()
fonctionne réellement. Considérez ceci:Travail des méthodes set_seq1 et set_seq2, difflib python
s = difflib.SequenceMatcher(None, "hey here" , "hey there").ratio()
print s
donne s = 0.9411764705882353
Je voulais savoir exactement comment il est calculé. Les 2 chaînes sont comparées en regardant en fait à l'écart d'une chaîne other.for 2 cordes WRT un et b Les docs disent:
différences sont calculées comme « qu'est-ce que nous devons faire pour « un 'pour le changer en' b '? "
Et il y a quelque chose comme:
pour x dans b, B2J [x] est une liste des indices (en b) au cours de laquelle x apparaît; les éléments indésirables n'apparaissent pas
Veuillez expliquer ci-dessus l'exemple ci-dessus de s.
On dirait que vous devriez utiliser ' '' au lieu de ' "'Regardez:. ' difflib.SequenceMatcher (None, 'hey il', 'Hé') rapport() ' est exacly 1.0 –
son." hey here "et" hey there ", les citations ne font pas de différence, vous avez tapé les mauvais mots .. –