python 將數據寫入excel
阿新 • • 發佈:2017-09-08
ofo 練習 數據 www href python 復制 import get
摘要鏈接:
python第三方庫——xlrd和xlwt操作Excel文件學習 :http://blog.csdn.net/wangkai_123456/article/details/50457284
python操作Excel讀寫(使用xlrd和xlrt) : http://blog.csdn.net/mr__fang/article/details/7089581
Python中一般使用xlrd(excel read)來讀取Excel文件,使用xlwt(excel write)來生成Excel文件(可以控制Excel中單元格的格式),需要註意的是,用xlrd讀取excel是不能對其進行操作的:xlrd.open_workbook()方法返回xlrd.Book類型,是只讀的,不能對其進行操作。而xlwt.Workbook()返回的xlwt.Workbook類型的save(filepath)方法可以保存excel文件。
因此對於讀取和生成Excel文件都非常容易處理,但是對於已經存在的Excel文件進行修改就比較麻煩了。不過,還有一個xlutils(依賴於xlrd和xlwt)提供復制excel文件內容和修改文件的功能。其實際也只是在xlrd.Book和xlwt.Workbook之間建立了一個管道而已。
xlutils.copy模塊的copy()方法實現了這個功能,示例代碼如下:
from xlrd import open_workbook from xlutils.copy import copy rb = open_workbook(‘m:\\1.xls‘) #通過sheet_by_index()獲取的sheet沒有write()方法rs = rb.sheet_by_index(0) wb = copy(rb) #通過get_sheet()獲取的sheet有write()方法 ws = wb.get_sheet(0) ws.write(0, 0, ‘changed!‘) wb.save(‘m:\\1.xls‘)
練習代碼(通過xlrd 讀取 & 寫入,再借用copy進行保存):
特別註意:由於copy保存實質上是通過xlwt進行保存的,而實際上xlwt保存的文件。
而通過xlwt只能寫入xls文件,不能寫入xlsx文件。
import xlrd from xlwt import * fromxlutils.copy import copy xlsfile = ‘test.xls‘ book = xlrd.open_workbook(xlsfile) sheet_name = book.sheet_names() print(sheet_name) sheet = book.sheet_by_index(1) nrows = sheet.nrows ncols = sheet.ncols print(nrows) print(ncols) row_data = sheet.row_values(0) col_data = sheet.col_values(0) print(row_data) print(col_data) cell_value = sheet.cell_value(3,0) print(cell_value) cell_value2 = sheet.cell(3,0) print(cell_value2) sheet.put_cell(1,2,1,"test",0) cell_value2 = sheet.cell(1,1) print(cell_value2) #保存xlsfile wb = copy(book) wb.save(xlsfile)
python 將數據寫入excel