Дубликаты в предложении текстового файла в python - PullRequest
0 голосов
/ 14 марта 2020

Привет! Я хочу написать код, который читает текстовый файл и идентифицирует предложения в файле со словами, которые имеют дубликаты в этом предложении. Я думал о том, чтобы поместить каждое предложение файла в словарь и найти, какие предложения имеют дубликаты. Поскольку я новичок в Python, мне нужна помощь в написании кода.

Это то, что у меня есть:

def Sentences():
    def Strings():
        l = string.split('.')

        for x in range(len(l)):
            print('Sentence', x + 1, ': ', l[x])

        return

    text = open('Rand article.txt', 'r')

    string = text.read()

    Strings()

    return

Приведенный выше код преобразует файлы в предложения.

1 Ответ

0 голосов
/ 15 марта 2020

Предположим, у вас есть файл, в котором каждая строка представляет собой предложение, например, "examples.txt":

I contain unique words.
This sentence repeats repeats a word.

Стратегия может состоять в том, чтобы разбить предложение на составляющие его слова, а затем использовать set для найти уникальные слова в предложении. Если результирующее set короче, чем list всех слов, то вы знаете, что предложение содержит хотя бы одно дублированное слово:

sentences_with_dups = []
with open("sentences.txt") as fh:
    for sentence in fh:
        words = sentence.split(" ")
        if len(set(words)) != len(words):
            sentences_with_dups.append(sentence)
...