from jinja2 import Environment, PackageLoader env = Environment(loader=PackageLoader('results')) def write_file(j2_file, to_file, param): template = env.get_template(j2_file) content = template.render(**param) with open(to_file, 'w') as fp: fp.write(content) # write_file("test.j2", './test.conf', {"name": 'xiaoxiao1', "age": '18', "country": 'China'}) vue_obj = { "table_name": "table2", "table_objs": [ { "prop": "name", "label": "姓名", "width": "150", "search": True, "edit": True }, { "prop": "age", "label": "年龄", "width": "150", "search": True, "edit": True }, { "prop": "date", "label": "日期", "width": "150", "search": True, "edit": False }, { "prop": "email", "label": "email地址", "width": "300", "search": False, "edit": True } ] } write_file("vue_table.j2", "./test.vue", vue_obj)