VarRender.py 994 B

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  1. # -*- coding: utf-8 -*-
  2. import json
  3. # 变量渲染
  4. # 字符串模板进行参数渲染
  5. # 使用 jinja2 模板引擎 (类似 flask的模板)
  6. # https://docs.jinkan.org/docs/jinja2/templates.html
  7. from jinja2 import Template
  8. def refresh(target, context):
  9. """
  10. 把你初始数据中需要渲染的数据变成context当中的值
  11. :param target: 你的初始数据,用 {{变量名}} -- 请求数据
  12. :param context: 你的初始数据渲染的值 -- 全局变量
  13. :return:
  14. """
  15. if target is None: return None
  16. return Template(str(target)).render(context)
  17. # 测试方法
  18. # def t_Refresh():
  19. # target = "hello {{name}}, {{niasd}},{{token}}"
  20. # context = {"name": "张三", "token": [
  21. # {
  22. # "type": "套餐",
  23. # "value": "套餐二"
  24. # },
  25. # {
  26. # "type": "颜色",
  27. # "value": "银色"
  28. # },
  29. # {
  30. # "type": "容量",
  31. # "value": "64G"
  32. # }
  33. # ]}
  34. # res = refresh(target, context)
  35. # print(res)
  36. # t_Refresh()