TGTGInsighttelegram intelligenceLIVE / telegram public index
← Python Заметки

TGINSIGHT SIMILAR POSTS

Најди сличен содржај

Изворен канал @pythonotes · Post #186 · 2 дек.

­ В стандартных библиотеках Python есть средства для текстового процессинга. Например difflib, fnmatch или тотже re. Но в реальной работе они оказываются "многословны" при при поиске нечётких совпадений строк. Например, если вы пишете голосовой помощник и вам требуется определить произнесённые ключевые слова. Или в вашем телеграм-боте пользователь вводит определённые слова и возможны ошибки или сокращения. Вместо того чтобы писать большой список вариантов каждого слова следует применять нечёткое совпадение в тексте. Для этого хорошо подойдёт библиотека fuzzywuzzy. Она может посчитать на сколько один текст похож на другой или найти из списка строк самое похожее на заданный текст. Пример поиска имени месяца по введённому юзером тексту. Список месяцев берём из примера прошлого поста. >>> from fuzzywuzzy import process >>> import calendar >>> months = list(calendar.month_name)[1:] # достаём все совпадения. Функция возвращает само слово и степень похожести >>> process.extract('январ', months, limit=3) [('Январь', 91), ('Март', 44), ('Сентябрь', 40)] # можно сразу взять самое похожее совпадение >>> process.extractOne('фев', months) ('Февраль', 90) Конечно, на этом возможности не ограничены. Можно искать в текстах плагиат, анализировать текст на статистику похожих слов, создать автокомплиты с исправлениями в текстовых редакторах и тд. #libs

Hashtags

Резултати

Пронајдени 0 слични објави

Глобално пребарување

Не се пронајдени слични објави.

Оваа објава нема претходно пресметани резултати на сличност.