Задать вопрос
@Kirill-Gorelov
С ума с IT

Работа со строками. Алгоритм?

Ребят. Привет.
Нужно написать скрипт. Который будет из одного текстового файла "А" удалять слова, которые находят в другом текстовом файле "Б".
Вот не особо понимаю как сделать этот алгоритм и какие, скажем так, функции нужно использовать?
Но самое важное это алгоритм!
  • Вопрос задан
  • 212 просмотров
Подписаться 1 Оценить Комментировать
Пригласить эксперта
Ответы на вопрос 4
@dmitryKovalskiy
программист средней руки
Решение в лоб - загрузить оба файла в отдельные массивы и проверить поэлементно А на наличие элемента в Б. По результатам проверки - удалить/пропустить. Получившийся массив перезаписать в файл А.
Ответ написан
MaxDukov
@MaxDukov
впишусь в проект как SRE/DevOps.
цикл по каждому слову из B, и str_replace
Ответ написан
Комментировать
Remasik
@Remasik
Недавно вроде был подобный вопрос =) вы еще скрипт просили. Да?
файл 1 (a=222, b=333, c=444, d=333), файл 2 (222 333)
Результат (c=444, d=333)
Супер-говнокод, но суть уловима, надеюсь.
l = list()
with open('2.txt') as f:
	for line in f.readlines():
		l.append(line.replace('\n',''))

res = list()
with open('1.txt') as f2:
	for line in f2.readlines():
		res.append(line.replace('\n',''))


res = filter(lambda x: x.split('=')[-1] not in l, res)

with open('12.txt', 'w') as f2:
	for line in res:
		f2.write(line+"\n")
Ответ написан
@airyashov
для начала слова из файла 2 отсортировать по убыванию длин строк
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы