Я пытаюсь искать слова из файла и добавлять полученные слова из каждой строки в Tuple. И затем я хочу найти пересекающиеся слова из двух кортежей list_1 и list_2. Но я получаю error-Пересечение Python из 2 кортежей UNICODE/Список
TypeError: unhashable тип: 'список'
# -*- coding: utf-8 -*-
импорт повторно
list_1 = []
list_2 = []
файл данных = открыт (filename)
для строки1 в файле данных:
if '1st word to be searched' in line1:
s = line1
left, right = re.findall(r'(\S+\s+\S+)\s+1stWordToBeSearched\s+(\S+\s+\S+)', s)[0]
set1 = {left, right}
list_1.extend([left,right])
list_1 = list(list_1)
datafile1 = открыт (имя файла)
для line2 в datafile1:
if ' 2nd word to be searched' in line2:
s = line2
left, right = re.findall(r'(\S+\s+\S+)\s+2ndWordTbeSearched\s+(\S+\s+\S+)', s)[0]
set2 = {left, right}
list_2.extend([left,right])
list_2 = list(list_2)
результат = set1.intersection (SET2)
печати (результат)
в первом for loop - «findall» выполняет поиск предложений со словом «число». И затем находит слова слева и справа от слова «число». И Создает list-
list_1 = [о, а, в, элементы]
в секунду для петлям FindAll ищет слово "современный". и дает слова левым и правым. И создает 2-й list-
list_2 = [о, все, элементы, являются]
Файл- Эссе может состоять из числа элементов, в том числе литературной критики, политические манифесты, узнал аргументы , наблюдения за повседневной жизнью, воспоминания и размышления автора всех современных элементов написаны в прозе, но произведения в стихах назывались эссе.
Когда получаются списки_1 и list_2, должны быть получены слова, общие в них. Обратите внимание: файл НЕ является английским. Он находится на другом языке.
Каждый из списков содержат * другой * список. Вы имели в виду использовать 'list.extend()' вместо 'list.append()' вместо этого, возможно? –
Я пытался использовать .extend(), но он дает мне пустой набор() – Trish