方法#1:素朴なアプローチを使用する( sum()+ zip()
)
関数sumを使用する素朴なアプローチを使用して、この特定のタスクを実行できますとzipを使用すると、両方の文字列の類似性を計算できるユーティリティ関数を作成できます。
#Python3デモコード
#行間の類似性
#単純なメソッドを使用(sum()+ zip())
#類似性を計算するためのユーティリティ関数
def
類似(str1、str2):
str1
=
str1
+
``
*
(
len
(str2)
-
len
(str1))
str2
=
str2
+
``
*
(
len
(str1)
-
len
(str2))
return
合計
(
1
if
i
=
=
j
else
0
for
i、j
in
zip
(str1、str2))
/
float
(
len
(str1))
#文字列の初期化
test_string1
=
`Geeksforgeeks`
test_string2
=
`Geeks4geeks`
#単純なメソッドを使用(sum()+ zip())
#行間の類似性
res
=
類似(test_string1、test_string2)
#結果を出力
print
(
"2つの文字列の類似点は次のとおりです:"
+
str
(res))
出力: b>
2つの文字列間の類似性は次のとおりです:0.38461538461538464
方法#2:を使用するSequenceMatcher.ratio()
この特定のタスクを実行するのに役立つ組み込みのメソッドがあります。特別なアプローチを必要としないため、この特定のタスクを実行することをお勧めしますが、組み込みの構造を使用して、タスクをより効率的に実行します。 / p>
出力: b> 2つの文字列の類似性は次のとおりです:0.5555555555555556 ShopLatest questions Wiki |