zoukankan      html  css  js  c++  java
  • python——处理excel

    ---恢复内容开始---

    1. python处理excel的包有很多

    xlrd(读取excel内容)

    xlwt(写excel内容)

    openpyxl(读写)

    xlutils(保持excel格式不变的情况操作内容)

    xlswing (效率高)

    pandas(数据处理,分析)

    具体的性能对比我还没有试过,只是目前比较流行的操作excel的包为以上几种

    2. 保持excel格式的方法,两种

    xlutils我觉得更加的方便一些,但是它只能支持03版的excel,就是xls结尾的文件,07版的xlsx则不支持。

    xlutils的copy方法

    tem_excel = xlrd.open_workbook(self.templatePath, formatting_info=True)
    new_excel = copy(tem_excel)
    new_sheet = new_excel.get_sheet(self.headerConfDict.get("targetsheet"))

    new_sheet, new_excel = self.getTemplateSheet()
    for rownumber, rowvalue in wholeDict.items():
    for x in rowvalue:
    if (x.get("format") == None):
    new_sheet.write(rownumber, x.get("index"), x.get("value"))
    else:
           #设置颜色
            
    new_sheet.write(rownumber, x.get("index"), x.get("value"), self.setStyle())
    new_excel.save(filename)


    style = xlwt.XFStyle()
    pattern = xlwt.Pattern()
    pattern.pattern = Pattern.SOLID_PATTERN
    pattern.pattern_fore_colour = Style.colour_map['red']
    style.pattern = pattern
    return style
     

    openpyxl

    wb = openpyxl.load_workbook("Template.xlsx")
    sheetnames = wb.get_sheet_names()
    sheet = wb.get_sheet_by_name(sheetnames[0])
    sheet.cell(row=2,column=2,value=123456)
    #设置颜色
    fill = PatternFill('solid', fgColor='FF0000')
    sty1 = NamedStyle(name='sty1', fill=fill)
    new_sheet.cell(row=rownumber + 1, column=x.get("index") + 1).style = sty1
    print(sheet)
    wb.save("test.xlsx")


    3. xlrd的基本操作
    import xlrd
    xlrd.workbook("filepath")
  • 相关阅读:
    MVC框架及应用
    《架构之美》三
    《架构之美》二
    深度学习之多层感知器
    架构之美
    质量属性之淘宝案例分析
    配置cocos相关问题
    3-5
    web文本框之内容提示
    【LeetCode】024. Swap Nodes in Pairs
  • 原文地址:https://www.cnblogs.com/emmaduan/p/11712285.html
Copyright © 2011-2022 走看看