Python добавляет слова в список, игнорируя повторяющиеся слова - PullRequest
0 голосов
/ 19 октября 2019

Я хочу игнорировать повторяющиеся слова в текстовом файле .txt, и я пробовал много вещей, но ни одно из них не сработало.

def words_in_file(filename):
       f = open(filename)
       word = []
       for line in f:
           word.append(line)
       return word

Ответы [ 2 ]

0 голосов
/ 19 октября 2019

Я не знаю ваш файл, но из вашего кода он не имеет ничего общего с тем, что вы хотите. Но вы можете найти уникальные слова, как это: list(set(another_list)). Только если в вашей строке только одно слово, измените код следующим образом:

def words_in_file(filename):
   f = open(filename)
   word = []
   for line in f:
       word.append(line)
       another_list=list(set(word))
   return another_list

edit: И в конце не забудьте закрыть файл.

0 голосов
/ 19 октября 2019

Вы можете использовать set, который игнорирует дубликаты.

def words_in_file(filename):
    words = []
    with open(filename) as f:
        for line in f:
            words.append(line)
    return set(words)

Обратите внимание, что я использовал with, который обязательно закроет файл после его использования или, если естьошибка.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...