>백엔드 개발 >파이썬 튜토리얼 >Python에서 문자열 유사성을 확률로 어떻게 계산할 수 있습니까?

Python에서 문자열 유사성을 확률로 어떻게 계산할 수 있습니까?

Linda Hamilton
Linda Hamilton원래의
2024-12-03 03:52:10492검색

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

Python 표준 라이브러리로 문자열 유사성 측정

두 문자열 간의 유사성을 정량화하는 것은 다양한 애플리케이션에서 중요한 작업입니다. Python은 이러한 목적에 편리한 솔루션을 제공하는 표준 라이브러리를 제공합니다.

문제:

Python에서 문자열이 다른 문자열과 유사할 확률을 어떻게 확인할 수 있습니까? ? 유사성 수준을 나타내기 위해 0.9(90%)와 같은 소수 값을 얻는 것이 목표입니다.

해결책:

Python의 difflib 모듈에는 SequenceMatcher 클래스가 포함되어 있습니다. 이는 문자열 유사성 계산을 용이하게 합니다. 이 클래스의 ratio() 메서드는 [0, 1] 범위의 10진수 값을 반환합니다. 여기서 0은 유사성이 없음을 나타내고 1은 완전한 유사성을 나타냅니다.

구현:

from difflib import SequenceMatcher

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

예시 사용법:

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

이 예에서는 "Apple"과 "Appel"이 철자가 가까워서 유사성 점수가 높은 반면(0.8) "Apple"과 "Mango"는 유사도가 낮다는 것을 보여줍니다. 유사성 점수(0.0)는 매우 다르기 때문입니다.

위 내용은 Python에서 문자열 유사성을 확률로 어떻게 계산할 수 있습니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.