Heim >Backend-Entwicklung >Python-Tutorial >Wie kann ich String-Ähnlichkeit als Wahrscheinlichkeit in Python berechnen?

Wie kann ich String-Ähnlichkeit als Wahrscheinlichkeit in Python berechnen?

Linda Hamilton
Linda HamiltonOriginal
2024-12-03 03:52:10492Durchsuche

How Can I Calculate String Similarity as a Probability in Python?

String-Ähnlichkeit mit Pythons Standardbibliothek messen

Die Quantifizierung der Ähnlichkeit zwischen zwei Strings ist in verschiedenen Anwendungen eine wertvolle Aufgabe. Python bietet eine Standardbibliothek, die für diesen Zweck eine praktische Lösung bietet.

Problem:

Wie können wir die Wahrscheinlichkeit bestimmen, dass ein String einem anderen String in Python ähnelt? ? Unser Ziel ist es, einen Dezimalwert wie 0,9 (90 %) zu erhalten, um den Ähnlichkeitsgrad darzustellen.

Lösung:

Das Difflib-Modul von Python enthält die SequenceMatcher-Klasse. Dies erleichtert die Berechnung der String-Ähnlichkeit. Die ratio()-Methode dieser Klasse gibt einen Dezimalwert im Bereich [0, 1] zurück, wobei 0 keine Ähnlichkeit angibt und 1 vollständige Ähnlichkeit angibt.

Implementierung:

from difflib import SequenceMatcher

def similar(a, b):
    return SequenceMatcher(None, a, b).ratio()

Beispielverwendung:

>>> similar("Apple", "Appel")
0.8
>>> similar("Apple", "Mango")
0.0

Diese Beispiele veranschaulichen, dass „Apple“ und „Appel“ aufgrund ihrer ähnlichen Schreibweise einen hohen Ähnlichkeitswert (0,8) haben, während „Apple“ und „Mango“ einen niedrigen Ähnlichkeitswert (0,0) haben, weil sie sehr unterschiedlich sind.

Das obige ist der detaillierte Inhalt vonWie kann ich String-Ähnlichkeit als Wahrscheinlichkeit in Python berechnen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn