Python读写/追加excel文件德姆o分享

本文实例为大家分享了python操作EXCEL的实例源码,供大家参考,具体内容如下

三个工具包

本文实例为大家分享了python批量设置多个Excel文件页眉页脚的具体代码,供大家参考,具体内容如下

读EXCEL的操作:把excel的数据存储为字典类型

python操作excel的三个工具包如下,注意,只能操作.xls,不能操作.xlsx。

import os
import openpyxl
from openpyxl.worksheet.header_footer import _HeaderFooterPart

xlsxFiles = (fn for fn in os.listdir('.') if fn.endswith('.xlsx'))
for xlsxFile in xlsxFiles:
 wb = openpyxl.load_workbook(xlsxFile)
 for ws in wb.worksheets:
 # 设置首页与其他页不同
 ws.HeaderFooter.differentFirst = True
 # 设置奇偶页不同
 ws.HeaderFooter.differentOddEven = True
 # 设置首页页眉页脚
 ws.firstHeader.left = _HeaderFooterPart('第一页左页眉', size=24, color='FF0000')
 ws.firstFooter.center = _HeaderFooterPart('第一页中页脚', size=24, color='00FF00')
 # 设置奇偶页页眉页脚
 ws.oddHeader.right = _HeaderFooterPart('奇数页右页眉')
 ws.oddFooter.center = _HeaderFooterPart('奇数页中页脚')
 ws.evenHeader.left = _HeaderFooterPart('偶数页左页眉')
 ws.evenFooter.center = _HeaderFooterPart('偶数页中页脚')
 wb.save('new_'+xlsxFile)
#coding=utf8 

#导入读excel的操作库 
import xlrd 
class GenExceptData(object): 
  def __init__(self): 
    try: 
      self.dataDic={} 
      #打开工作薄 
      self.wkbook= xlrd.open_workbook("Requirement.xls") 
      #获取工作表“requirement” 
      self.dataSheet=self.wkbook.sheet_by_name("requirement") 
      #把数据按 按照相应格式写入excel表中 
      self.readDataToDicl() 
      #保存文件 
    except Exception,e: 
      print "Read Excel error:",e 

  def readDataToDicl(self): 
    try: 
      nrows = self.dataSheet.nrows 
      ncols = self.dataSheet.ncols 

      print ncols ,nrows 
      try: 
        for rowNum in range(1,nrows):     
              #把数据的当前行的元素与上一行元素作比较 
              #如果不相等执行if语句 
              try: 

                singleJson={} 
                propertyName=self.dataSheet.cell(rowNum,3).value 
                propertyValue=self.dataSheet.cell(rowNum,4).value 

                if self.dataSheet.cell(rowNum,0).value and self.dataSheet.cell(rowNum,2).value: 
                  mdEvent=self.dataSheet.cell(rowNum,0).value 
                  singleJson["serviceId"]=self.dataSheet.cell(rowNum,2).value 
                singleJson[propertyName]=propertyValue                
                print singleJson 
                self.dataDic[mdEvent]=singleJson 
                singleJson.clear() 


              except Exception,e: 
                print "Get Data Error:",e 
      except Exception,e: 
        print "Reading Data Error:",e 
    except Exception,e: 
      print "Reading Data TO Dic Error:",e 




def test(): 
  GenExceptData() 

if __name__=="__main__": 
  test() 

• xlrd: 对excel进行读相关操作

来源:python小屋

写EXCEL的操作:把csv文件的数据按照需求写入到excel文件中

• xlwt: 对excel进行写相关操作

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

#coding=utf8 

from readCSV import readCSV 
import xlwt 

class GenTestCase(): 
  def __init__(self,path="E:\\PythonDemo\\OperExcel\\Demo.csv"): 
    self.dataInfor=readCSV(path) 
    #创建工作薄 
    self.wkbook=xlwt.Workbook() 
    #创建表:“埋点需求” 
    self.dataSheet=self.wkbook.add_sheet("shellt") 
    self.creatHead() 

  def creatHead(self): 
    firstLine=[] 
    #创建表头 
    for index in range(len(firstLine)): 
      self.dataSheet.write(0,index,firstLine[index]) 

    dataBody=self.dataInfor.buffer 
    print dataBody.__len__() 
    currentrow=1 
    for rowNum in range(1,len(dataBody)): 
      for index in range(len(dataBody[rowNum])): 
        if rowNum>1: 
          if dataBody[rowNum-1][0]!=dataBody[rowNum][0] : 
            print currentrow,rowNum 
            if currentrow==1: 
              for cols in range(3): 
                cellValue=dataBody[currentrow][cols] 
                cellValue=cellValue.decode("gbk") 
                data=u"%s" %(cellValue) 
                self.dataSheet.write_merge(currentrow,rowNum-1,cols,cols,data) 

              for cols in range(6,13): 
                cellValue=dataBody[currentrow][cols] 
                cellValue=cellValue.decode("gbk") 
                data=u"%s" %(cellValue) 
                self.dataSheet.write_merge(currentrow,rowNum-1,cols,cols,data)    
            else:   
              for cols in range(3): 
                cellValue=dataBody[currentrow][cols] 
                cellValue=cellValue.decode("gbk") 
                data=u"%s" %(cellValue) 
                self.dataSheet.write_merge(currentrow-1,rowNum-1,cols,cols,data) 
              for cols in range(6,12): 
                cellValue=dataBody[currentrow][cols] 
                cellValue=cellValue.decode("gbk") 
                data=u"%s" %(cellValue) 
                self.dataSheet.write_merge(currentrow-1,rowNum-1,cols,cols,data)                       
            currentrow=rowNum+1              
          break 

      for cols in range(3,6):        
        cellValue=dataBody[rowNum][cols] 
        cellValue=cellValue.decode("gbk") 
        data=u"%s" %(cellValue) 
        self.dataSheet.write(rowNum,cols,data) 

    self.wkbook.save(r'reqq.xlsx') 



def test(): 
  GenTestCase() 

if __name__=="__main__": 
  test() 

• xlutils: 对excel读写操作的整合

您可能感兴趣的文章:

  • python中使用xlrd、xlwt操作excel表格详解
  • Python读写Excel文件的实例
  • python高手之路python处理excel文件(方法汇总)
  • 用Python的pandas框架操作Excel文件中的数据教程
  • 用python读写excel的方法
  • python使用xlrd模块读写Excel文件的方法
  • 用python +
    openpyxl处理excel2007文档思路以及心得
  • Python中使用第三方库xlutils来追加写入Excel文件示例
  • python制作爬虫并将抓取结果保存到excel中
  • python抓取某汽车网数据解析html存入excel示例

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

这三个工具包都可以直接使用pip进行下载:

发表评论

电子邮件地址不会被公开。 必填项已用*标注