Вы находитесь на странице: 1из 1

Задача 2

Контекстный поиск:
Реализуйте алгоритм индексирования, позволяющий проводить контекстный поиск.
Пользователь вводит запрос и контекст (несколько слов до и после запроса), а
программа должна выводить совпадения с учетом контекста.

Ответ:
def context_search(texts, query, context_words):
results = []

for text in texts:


words = text.split()
for i, word in enumerate(words):
if query in word:
context_start = max(0, i - context_words)
context_end = min(len(words), i + context_words + 1)
context = " ".join(words[context_start:context_end])
results.append((context, text))

return results

Пояснение к ответу:
В этом примере texts представляет список текстовых строк, в которых мы ищем
совпадения. query - это запрос, который мы ищем в тексте, и context_words -
количество слов до и после запроса,
которые мы будем выводить в контексте. Функция context_search обходит каждую
текстовую строку, находит вхождения запроса и создает контекст вокруг них.
Результаты выводятся на экран.

Вам также может понравиться