ホームページ > バックエンド開発 > Python チュートリアル > Python の「difflib」はどのようにして文字列の類似性を効率的に計算できるのでしょうか?

Python の「difflib」はどのようにして文字列の類似性を効率的に計算できるのでしょうか?

DDD
リリース: 2024-12-08 06:15:12
オリジナル
163 人が閲覧しました

How Can Python's `difflib` Efficiently Calculate String Similarity?

Python での文字列類似性メトリクスの取得

文字列間の類似性を判断することは、さまざまな自然言語処理アプリケーションにおいて重要なタスクです。 Python は、この取り組みを支援する堅牢なライブラリを提供します。

アプローチ:

2 つの文字列間の類似性メトリックを計算するには、difflib モジュールが提供します。 SequenceMatcher クラス。このクラスは、最長共通部分列 (LCS) アルゴリズムなどの異なるアルゴリズムを使用して、2 つのシーケンス (この場合は文字列) 間の類似性を評価します。

実装:

from difflib import SequenceMatcher

def similar(a, b):
    return SequenceMatcher(None, a, b).ratio()
ログイン後にコピー

similar 関数は 2 つの文字列を受け入れます。 ab を比較し、それらの間の類似性を 0 (類似性なし) から 1 (完全な類似性) までの 10 進数値で返します。

使用法:

print(similar("Apple", "Appel"))  # Expected output: 0.8 (high similarity)
print(similar("Apple", "Mango"))  # Expected output: 0.0 (low similarity)
ログイン後にコピー

この例では、「Apple」と「Appel」は高いので類似する確率が高いことを示し、「Apple」と「Mango」の類似度は低いため類似する確率が低いことを示します。

以上がPython の「difflib」はどのようにして文字列の類似性を効率的に計算できるのでしょうか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート