(注:本文部分內容摘自互聯網,由於作者水平有限,不足之處,還望留言指正。)
面對疾風吧。
回首往昔,更進一步。
且隨疾風前行,身后一許流星。
正文:
數據處理是Python的一大應用場景,而 Excel 則是最流行的數據處理軟件。因此用 Python進行數據相關的工作時,難免要和 Excel 打交道。標准的 Excel 文件(xls/xlsx)具有較復雜的格式,並不方便像普通文本文件一樣直接進行讀寫,需要借助第三方庫來實現。
以下內容均在Python3上實現,如果是Python2,則需要修改編碼。
一、讀Excel表(xlrd模塊)
Xlrd模塊只能用來讀取數據操作,無法修改數據。
import xlrd #導入模塊 data = xlrd.open_workbook('電影.xlsx') #打開電影.xlsx文件讀取數據 table = data.sheets()[0] #讀取第一個(0)表單 #或者通過表單名稱獲取 table = data.sheet_by_name(u'Sheet1') print(table.nrows) #輸出表格行數 print(table.ncols) #輸出表格列數 print(table.row_values(0)) #輸出第一行 print(table.col_values(0)) #輸出第一列 print(table.cell(0,2).value) #輸出元素(0,2)的值
輸出結果:
原Excel表格情況:
二、寫Excel表(xlwt模塊)
import xlwt #導入模塊 wb = xlwt.Workbook(encoding = 'ascii') #創建新的Excel(新的workbook),建議還是用ascii編碼 ws = wb.add_sheet('weng') #創建新的表單weng ws.write(0, 0, label = 'hello') #在(0,0)加入hello ws.write(0, 1, label = 'world') #在(0,1)加入world ws.write(1, 0, label = '你好') wb.save('weng.xls') #保存為weng.xls文件
在py文件路徑下出現了這個文件,內容為:
三、改Excel表(xlutils模塊)
import xlrd #導入模塊 from xlutils.copy import copy #導入copy模塊 rb = xlrd.open_workbook('weng.xls') #打開weng.xls文件 wb = copy(rb) #利用xlutils.copy下的copy函數復制 ws = wb.get_sheet(0) #獲取表單0 ws.write(0, 0, 'changed!') #改變(0,0)的值 ws.write(8,0,label = '好的') #增加(8,0)的值 wb.save('weng.xls') #保存文件
修改后的Excel表為:
就寫到這里吧,工作之余抽空寫點,不足之處以后再補充吧。
樹葉的一生,只是為了歸根嗎?
長路漫漫,惟劍做伴。
一劍,一念。