• 导出excel--多个sheet


    def export_channel_loaned(queryset):
        today = time.strftime('%Y%m%d%H%M%S')
        excel_name = '%s_channel_loaned' % (today,)
        head_list = ['渠道', '合同金额', '合同件数', '逾期件数',
                     '首期同期资产', 'M1逾期金额', 'M1逾期率', 'M1逾期率相比上周',
                     '二期同期资产', 'M2逾期金额', 'M2逾期率', 'M2逾期率相比上周',
                     '三期同期资产', 'M3逾期金额', 'M3逾期率', 'M3逾期率相比上周',
                     '四期同期资产', 'M3+逾期金额', 'M3+逾期率', 'M3+逾期率相比上周']
        export_excel = ExportExcel(excel_name)
        dct = export_excel.xxx(head_list)
        sheet_prd = dct['sheet_prd'][0]
        sheet_rpd=dct['sheet_prd'][1]       #######################这里是重点
        style_body = dct['style_body']
        row = 1
        if queryset:
            for content in queryset:
                sheet_prd.write(row, 0, content.name, style_body)
                sheet_prd.write(row, 1, str(content.contract_amount), style_body)
                sheet_prd.write(row, 2, utils.export_int2str_format(content.total), style_body)
                sheet_prd.write(row, 3, utils.export_int2str_format(content.overdue_total), style_body)
    
                sheet_prd.write(row, 4, str(content.first_contract_amount), style_body)
                sheet_prd.write(row, 5, str(content.m1_overdue_money), style_body)
                sheet_prd.write(row, 6, utils.format_float(content.m1_overdue_rate), style_body)
                sheet_prd.write(row, 7, str(utils.format_float(content.m1_overdue_rate_week_up)), style_body)
    
                sheet_prd.write(row, 8, str(content.second_contract_amount), style_body)
                sheet_prd.write(row, 9, str(content.m2_overdue_money), style_body)
                sheet_prd.write(row, 10, str(utils.format_float(content.m2_overdue_rate)), style_body)
                sheet_prd.write(row, 11, str(utils.format_float(content.m2_overdue_rate_week_up)), style_body)
    
                sheet_prd.write(row, 12, str(content.third_contract_amount), style_body)
                sheet_prd.write(row, 13, str(content.m3_overdue_money), style_body)
                sheet_prd.write(row, 14, str(utils.format_float(content.m3_overdue_rate)), style_body)
                sheet_prd.write(row, 15, str(utils.format_float(content.m3_overdue_rate_week_up)), style_body)
    
                sheet_prd.write(row, 16, str(content.fourth_contract_amount), style_body)
                sheet_prd.write(row, 17, str(content.m4_overdue_money), style_body)
                sheet_prd.write(row, 18, str(utils.format_float(content.m4_overdue_rate)), style_body)
                sheet_prd.write(row, 19, str(utils.format_float(content.m4_overdue_rate_week_up)), style_body)
    
                sheet_rpd.write(row,row-1,str(content.fourth_contract_amount), style_body)
                row += 1
        return export_excel.x()

    2,再加上sheet

        def xxx(self, head_list):
            """
            形成表头
            :param head_list: 表头数据
            :return:
            """
            sheet_prd = self.wb.add_sheet('PRD')
            sheet_rpd = self.wb.add_sheet('rpd')    #######多设置一个sheet
            style_heading = xlwt.easyxf()
            style_body = xlwt.easyxf()
            style_body.num_format_str = self.fmts[0]
            j = 0
            for i in head_list:
                sheet_prd.write(0, j, i, style_heading)
                sheet_rpd.write(0,j,i,style_heading)
                j += 1
            return {'sheet_prd': [sheet_prd,sheet_rpd], 'style_body': style_body}
  • 相关阅读:
    模块 configparser subprocess 表格 的
    random, json, pickle, hashlib, hmac, shutil, shelve
    常用模块 1.时间模块 2.系统模块 3.项目开发目录规范
    GAN 教程记录
    matplotlib.pyplot展示MNIST图片
    机器学习算法辨别
    命令
    搭环境
    不对称分类的错误评估
    入侵检测数据集
  • 原文地址:https://www.cnblogs.com/52forjie/p/9141771.html
Copyright © 2020-2023  润新知