Как вывести похожие слова из нескольких файлов в один?
Есть код:
_all = []
with open('prob 1.txt', 'r') as a:
a_list = a.read().split(' ')
_all.append(a_list)
with open('prob 2.txt', 'r') as b:
b_list = b.read().split(' ')
_all.append(b_list)
result = set(_all[0])
for s in _all[1:]:
result.intersection_update(s)
with open('compare_out.txt', 'w', ) as ufill:
for each in result:
ufill.writelines(each + '\n')
Но он ничего не выводит Не могу понять, где ошибка
Ответы (1 шт):
Автор решения: Zhihar
→ Ссылка
не совсем понятно, что именно вы хотите сделать?
если найти одинаковые слова в двух файлах, то у вас код как-то утяжелен и по идее должен выглядеть так:
with open('prob 1.txt', 'r') as file:
data1 = set(file.read().split())
with open('prob 2.txt', 'r') as file:
data2 = set(file.read().split())
result = data1.intersection(data2)
with open('compare_out.txt', 'w', ) as file:
for each in result:
file.writelines(each + '\n')
конечно по хорошему слова с большой и маленькой буквами будут разными словами, поэтому наверное стоит сначала все выделенные слова перевести в нижний регистр, дальше вопрос по словам, разделённым знаками препинания - их тоже надо обработать отдельно (например, заменить все знаки пробелами и потом только разделить на слова) и т.д.
