Уведомления

Группа в Telegram: @pythonsu

#1 Дек. 31, 2009 18:46:16

Ed
От:
Зарегистрирован: 2008-12-13
Сообщения: 1032
Репутация: +  13  -
Профиль   Отправить e-mail  

текст А и В, если строчка из текста В есть в А - удалить ее

Ну вот все и прояснилось. Хорошо, но немного грустно, что чудо опять не случилось :)

Всех с наступающим!



Офлайн

#2 Дек. 31, 2009 21:05:57

Андрей Светлов
От:
Зарегистрирован: 2007-05-15
Сообщения: 3137
Репутация: +  14  -
Профиль   Адрес электронной почты  

текст А и В, если строчка из текста В есть в А - удалить ее

Давным-давно как-то раз зашел к програмистам художник и попросил сделать ему маленький скрипт.
Задача стояла так: пройтись по текстовому файлу с описанием сцены и удалить некоторые куски. Задание было очень четко поставленно.
Один из наших взялся за дело и минут через десять - пятнадцать гордо отослал скрипт по назначению. Еще через четверть часа художник появился опять и вежливо поинтересовался: это нормально, что скрипт все работает и работает, а результата не видать. Автор творения озадачился…

Замечу в скобках, что обрабатываемые файлы - сцены для Maya 3D в текстовом формате .ma - занимали от 50 до 180 мегабайт, насколько помню. Компы в 2003 были несколько поменьше и помедленнее. Результат обескураживал - полчаса на обработку.

Первоначальный вариант был похож на приведенные здесь исходники - считать все в список а потом удалить ненужные строки.
Когда заменили на генератор - читать построчно и в это же время писать обработанные строку за строкой, пропуская ненужные - скорость драматически возросла. Точных измерений никто не делал - но уменьшение времени с несколькиз десятков минут до некольких секунд посчитали за удовлетворительный результат.



Отредактировано (Дек. 31, 2009 21:26:23)

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version