Язык программирования Python

Модуль difflib


Для приблизительного сравнения двух строк в стандартной библиотеке предусмотрен модуль difflib.

Функция difflib.get_close_matches() позволяет выделить n близких строк к заданной строке:

get_close_matches(word, possibilities, n=3, cutoff=0.6)

где

word

Строка, к которой ищутся близкие строки.

possibilities

Список возможных вариантов.

n

Требуемое количество ближайших строк.

cutoff

Коэффициент (из диапазона [0, 1]) необходимого уровня совпадения строк. Строки, которые при сравнении с word дают меньшее значение, игнорируются.

Следующий пример показывает функцию difflib.get_close_matches() в действии:

>>> import unicodedata >>> names = [unicodedata.name(unicode(chr(i))) for i in range(40, 127)] >>> print difflib.get_close_matches("LEFT BRACKET", names) ['LEFT CURLY BRACKET', 'LEFT SQUARE BRACKET']

В списке names - названия Unicode-символов с ASCII-кодами от 40 до 127.



Содержание раздела