from pathlib import Path from pprint import pprint import sys from generate import maps from generate import map_objects from generate import sprites files = [ (maps.generate_maps_header, "maps.hpp"), (maps.generate_maps_source, "maps.cpp"), (map_objects.generate_map_objects_source, "map_objects.cpp"), (sprites.generate_sprites_header, "sprites.hpp"), (sprites.generate_sprites_source, "sprites.cpp"), ] def generate(base_path): for func, filename in files: path = base_path / filename with open(path, 'w') as f: f.write(func().getvalue()) # sys.argv[1] is secretly used in parse base_path = Path(sys.argv[2]) generate(base_path)