class Preprocessor(object): def __init__(self, source_filename, target_filename, include_filenames): self.reader = Reader(source_filename) for filename in include_filenames: self.reader.include(filename) self.writer = Writer(target_filename) self.defines = {} self.lines = self.reader.get_lines() # это генератор def define(self, line): pass def include(self, line): pass def process(self, line): return True def run(self): for line in self.lines: if self.process(line): self.writer.write_line(line) def close(self): self.reader.close() self.writer.close()