поиск строк в файле с повтором 2-3 слов
word_combinations = {}
with open(filename, 'r', encoding='utf-8') as f:
for line_num, line in enumerate(f.readlines()):
words = line.strip().split()
word_set = set(words)
for i in range(len(words)):
for j in range(i + 1, len(words)):
word_combination = tuple(sorted([words[i], words[j]]))
if word_combination not in word_combinations:
word_combinations[word_combination] = []
word_combinations[word_combination].append(line_num)
if len(words) > 2:
for k in range(j + 1, len(words)):
word_combination = tuple(sorted([words[i], words[j], words[k]]))
if word_combination not in word_combinations:
word_combinations[word_combination] = []
word_combinations[word_combination].append(line_num)
repeated_combinations = {combination: lines for combination, lines in word_combinations.items() if 2 <= len(lines) <= 3}
grouped_lines = {}
with open(filename, 'r', encoding='utf-8') as f:
file_lines = f.readlines()
for combination, lines in repeated_combinations.items():
unique_lines = set()
for line_num in lines:
line_content = file_lines[line_num].strip()
unique_lines.add(line_content)
if len(unique_lines) > 1: # Skip groups with only one line
if combination not in grouped_lines:
grouped_lines[combination] = []
grouped_lines[combination] = list(unique_lines)
for key, group in grouped_lines.items():
if len(group) <= 10:
print(' '.join(key))
for line in group:
print(line)
print()
------------------------------------------->
алгоритм
*: Чтение файла
Алгоритм читает файл с именем "текст.txt" строка за строкой.
*: Поиск комбинаций слов
Для каждой строки он находит все возможные комбинации двух или трех слов. Например, если строка содержит слова "яблоко", "банан" и "вишня", он найдет комбинации "яблоко-банан", "яблоко-вишня" и "банан-вишня".
*: Группировка строк по комбинациям слов
Он группирует строки по их комбинациям слов. Например, если две строки содержат ту же комбинацию слов "яблоко-банан", они будут сгруппированы вместе.
*: Удаление дубликатов и групп с одной строкой
Он удаляет любые дублирующие строки внутри каждой группы и также удаляет группы, которые содержат только одну строку.
*: Печать результатов групп строк
Наконец, он печатает комбинации слов и соответствующие строки, но только если группа содержит от 2 до 10 строк.
В целом, этот алгоритм находит группы строк, которые содержат те же комбинации слов, удаляет дубликаты и группы с одной строкой, и печатает результаты.
* вывод строк ->
и кто может
и кто может знать что это есть на самом деле ?
может и так - кто может знать точнее
знать и кто
и кто может знать что это есть на самом деле ?
может и так - кто может знать точнее
есть и кто
и кто может знать что это есть на самом деле ?
так наверно и есть кто его знает
знать и может
и кто может знать что это есть на самом деле ?
может и так - кто может знать точнее
есть и может
А может есть и другие более простые создания других форм жизни вселенной
и кто может знать что это есть на самом деле ?
это как сказать - может что и есть
и может на
как посмотреть на это - может и так
и кто может знать что это есть на самом деле ?
знать и это
и кто может знать что это есть на самом деле ?
я это не могу знать - поэтому и спросил
деле есть и
и кто может знать что это есть на самом деле ?
это не кажется - так и есть на самом деле
? и на
так и что тогда будет на выходе ?
что за фото и что на нём изображено ?
и кто может знать что это есть на самом деле ?
знать кто может
и кто может знать что это есть на самом деле ?
может и так - кто может знать точнее
знать кто
и кто может знать что это есть на самом деле ?
может и так - кто может знать точнее
есть кто
и кто может знать что это есть на самом деле ?
так наверно и есть кто его знает
знать может
и кто может знать что это есть на самом деле ?
может и так - кто может знать точнее
есть может что
и кто может знать что это есть на самом деле ?
это как сказать - может что и есть
может на что
и кто может знать что это есть на самом деле ?
несмотря на то, что это так может быть
? может что
может быть - только что конкретно ?
и кто может знать что это есть на самом деле ?
а что может быть хорошо для тебя ?
есть может это
и кто может знать что это есть на самом деле ?
это как сказать - может что и есть
деле может это
может быть на самом деле это немного не так
и кто может знать что это есть на самом деле ?
есть может
А может есть и другие более простые создания других форм жизни вселенной
и кто может знать что это есть на самом деле ?
это как сказать - может что и есть
деле может на
может быть на самом деле это немного не так
и кто может знать что это есть на самом деле ?
деле может
может быть на самом деле это немного не так
и кто может знать что это есть на самом деле ?
самом что это
и кто может знать что это есть на самом деле ?
но что это на самом деле такое есть ?
есть на что
независимо что это есть на самом деле в нашем сознании
и кто может знать что это есть на самом деле ?
но что это на самом деле такое есть ?
есть самом что
и кто может знать что это есть на самом деле ?
но что это на самом деле такое есть ?
деле есть что
независимо что это есть на самом деле в нашем сознании
и кто может знать что это есть на самом деле ?
но что это на самом деле такое есть ?
на самом что
и кто может знать что это есть на самом деле ?
но что это на самом деле такое есть ?
самом что
и кто может знать что это есть на самом деле ?
но что это на самом деле такое есть ?
деле самом что
и кто может знать что это есть на самом деле ?
но что это на самом деле такое есть ?
? самом что
и кто может знать что это есть на самом деле ?
но что это на самом деле такое есть ?
? деле что
и кто может знать что это есть на самом деле ?
но что это на самом деле такое есть ?
есть самом это
и кто может знать что это есть на самом деле ?
но что это на самом деле такое есть ?
на самом это
и кто может знать что это есть на самом деле ?
но что это на самом деле такое есть ?
самом это
и кто может знать что это есть на самом деле ?
но что это на самом деле такое есть ?
деле самом это
и кто может знать что это есть на самом деле ?
но что это на самом деле такое есть ?
? самом это
и кто может знать что это есть на самом деле ?
но что это на самом деле такое есть ?
/..
Свидетельство о публикации №124092500454