python操作excel

來源:互聯網
上載者:User

標籤:dex   年齡   唯讀   表格   style   尾碼   pip安裝   soft   儲存   

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

1、讀excel

 

import xlrd
步驟 :#1.開啟excel
#2.選擇sheet頁
#3.讀資料
wb = xlrd.open_workbook(‘abc.xlsx‘) # 開啟的這個excel必須存在,否則會報錯
# 擷取所有sheet頁的名字
print(wb.sheet_names())
# 按名字尋找第二張表單
sheet=wb.sheet_by_name(‘sheet1‘)#根據sheet頁的名字擷取sheet頁
sheet = wb.sheet_by_index(0) # 根據sheet頁的索引擷取sheet頁
# 擷取sheet頁的行數和列數
print(sheet.nrows)#sheet頁的行數
print(sheet.ncols)#sheet頁的列數
# 列印每行資訊
for rownum in range(sheet.nrows): # 迴圈取每行的資料
if rownum!=0:#不取第一行資料(表頭)
print(sheet.row_values(rownum)) # 取每行的資料
print(sheet.col_values(rownum))#擷取每列資料
# 按照索引列印對應儲存格內容
cell_A2 = sheet.cell(0, 1).value # 擷取指定儲存格的值,第一個值是行,第二個值是列
print(cell_A2)

2、建立excel

 import xlwt
      #1、建立一個excel
#2、增加一個sheet頁
#3、寫資料
      
       # 建立一個excel對象
wbk = xlwt.Workbook()
# 添加一個名為 成績表的sheet頁
sheet = wbk.add_sheet(‘sc‘)
sheet.write(0,0,‘姓名‘)
sheet.write(0,1,‘年齡‘)
sheet.write(0,2,‘性別‘)
sheet.write(0,3,‘分數‘)
wbk.save(‘stus.xls‘)
以上操作將建立一個表頭為 姓名、年齡、性別、分數的excel表格,要寫入什麼內容按以上格式寫入即可

下面一個完整的建立一個excel程式:
title = [
‘姓名‘, ‘年齡‘, ‘性別‘, ‘分數‘
]
stus = [[‘m1‘, 20, ‘女‘, 89.9], [‘m2‘, 20, ‘女‘, 89.9], [‘m3‘, 20, ‘女‘, 89.9], [‘m4‘, 20, ‘女]]
# 建立一個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的


3、修改excel
#1、開啟excel
#2、複製
#3、修改

from xlrd import open_workbook # 匯入xlrd模組中開啟excel模組
from xlutils.copy import copy # 匯入xlutils模組的複製excel模組
rb = open_workbook(‘123.xls‘)#唯讀excel
# 複製一個excel
wb = copy(rb)
# 通過擷取到新的excel裡面的sheet頁
ws = wb.get_sheet(0)
ws.write(1, 0, ‘kjk‘) # 寫入excel,第一個值是行,第二個值是列
wb.save(‘123_new.xls‘) # 儲存新的excel,


 

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.