python基礎(六)python操作excel

來源:互聯網
上載者:User

標籤:sheet   索引   xlrd   rownum   行修改   儲存資料   xls   i+1   尾碼   

   一、python操作excel,python操作excel使用xlrd、xlwt和xlutils模組,xlrd模組是讀取excel的,xlwt模組是寫excel的,xlutils是用來修改excel的。這幾個模組使用pip安裝即可,下面是這幾個模組的使用。

    二、xlrd模組,xlrd模組用來讀excel,具體用法如下:

  • import xlrd
  • #開啟excel
  • wb=xlrd.open_workbook(‘abc.xlsx‘)#開啟的這個excel必須存在,否則會報錯
  • print(wb.sheet_names()) #擷取所有sheet頁的名字
  • sheet=wb.sheet_by_name(‘abc2‘)#根據sheet頁的名字擷取sheet頁
  • sheet = wb.sheet_by_index(0)#根據sheet頁的索引擷取sheet頁
  • #擷取sheet頁的行數和列數
  • print(sheet.nrows)
  • print(sheet.ncols)
  • #列印每行資訊
  • for rownum in range(sheet.nrows):  #迴圈取每行的資料
  •     print(sheet.row_values(rownum))#取每行的資料 colnum
  • #按照索引列印對應儲存格內容
  • cell_A2=sheet.cell(0,1).value#擷取指定儲存格的值,第一個值是列,第二個值是行
  • print(cell_A2)

    三、xlwt模組,xlwt模組用來寫excel,寫一個新的excel

  • import xlwt
  • title = [‘姓名‘,‘年齡‘,‘性別‘,‘分數‘]
  • stus = [[‘mary‘,20,‘女‘,89.9],[‘mary‘,20,‘女‘,89.9],[‘mary‘,20,‘女‘,89.9],[‘mary‘,20,‘女‘,89.9]]
  • #建立一個excel對象
  • wbk = xlwt.Workbook()
  • #添加一個名為 課程表的sheet頁
  • sheet = wbk.add_sheet(‘stu‘)
  • for i in  range(len(title)):#寫入表頭
  •     sheet.write(0,i,title[i])#寫入每行,第一個值是行,第二個值是列,第三個是寫入的值
  • for i in range(len(stus)):
  •     for j in range(4):
  •         sheet.write(i+1,j,stus[i][j])#迴圈寫入每行資料
  • #儲存資料到‘test.xls’檔案中
  • wbk.save(‘szz.xls‘)#儲存excel必須使用尾碼名是.xls的,不是能是.xlsx的

    四、xlutils模組,xlutils模組用來修改excel的內容,不能直接修改原來的excel內容,必須得先複製一個新的excel,然後對這個新的excel進行修改,用法如下:

  • from xlrd import open_workbook#匯入xlrd模組中開啟excel模組    
  • from xlutils.copy import copy#匯入xlutils模組的複製excel模組
  • rb = open_workbook(‘szz.xls‘)
  • #通過sheet_by_index()擷取的sheet
  • rs = rb.sheet_by_index(0)
  • #複製一個excel
  • wb = copy(rb)
  • #通過擷取到新的excel裡面的sheet頁
  • ws = wb.get_sheet(0)
  • ws.write(1, 0, ‘Lily‘)#寫入excel,第一個值是行,第二個值是列
  • wb.save(‘szz_new.xls‘)#儲存新的excel,儲存excel必須使用尾碼名是.xls的,不是能是.xlsx的

python基礎(六)python操作excel

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.