栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

python 根据jinjia模板写excle

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

python 根据jinjia模板写excle

  • python 更具jinjia 模板写excel文件,需要安装python 的一个包。
  • pip install xlsxtpl
  • 写excle 模板,jinjia 语法。
    代码如下:
import os
from datetime import datetime
from xlsxtpl.writerx import BookWriter


def write_test():
    pth = os.path.dirname(__file__)
    fname = os.path.join(pth, '001.xlsx') # 模板文件
    writer = BookWriter(fname)
    writer.jinja_env.globals.update(dir=dir, getattr=getattr)
    now = datetime.now()
    rows = [{'address': '花果山水帘洞', 'name': '齐天大圣', 'date': now},{'address': 'Somewhere over the rainbow', 'name': 'Hello Wizard', 'fm': 156, 'date': now}]

    person_info2 = {'address': u'Somewhere over the rainbow', 'name': u'Hello Wizard', 'fm': 156, 'date': now}

    person = {}
    person["rows"] = rows
    person["tpl_idx"] = 0 # tpl_idx 表示工作薄的序号,从0开始
    person_info2['tpl_idx'] = 1
    person["sheet_name"] = "test" # 工作薄的名称
    person_info2["sheet_name"] = "TEST"
    payloads = [person,person_info2]
    writer.render_book(payloads=payloads)
    fname = os.path.join(pth, 'result00.xlsx')
    writer.save(fname)
  • 模板文件:注意在标注中写jinjia 语法。
beforerow {% for row in rows %}
beforerow{% endfor %}

  • 写完之后的效果:

  • 参考连接

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/921229.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号