Python自動創建Excel并獲取內容
用到了兩個庫,xlrd和xlwt
xlrd是讀excel,xlwt是寫excel的庫[/code]
1)xlwd用到的方法:
xlwt.Workbook()是創建了一個空文件對象
.add_sheet()為空文件對象,是在該文件中建立一個工作表,并返回工作表對象
.write(row,col,data)為工作表對象,表示在第row+1行第col列添加data數據
.save(’文件名.xls’)為空文件對象,最后保存。
2)xlrd用到的方法:
打開excel文件讀取數據
data = xlrd.open_workbook(’文件名.xls’)
常用代碼:
#通過名稱獲取 table = data.sheet_by_name(u’Sheet1’)
獲取整行和整列的值(數組)
table.row_values(i)table.col_values(i)
獲取行數和列數
nrows = table.nrowsncols = table.ncols
下面是就是實現代碼
import xlwtimport xlrd# 一:.Workbook 創建工作簿,目前空白testbook = xlwt.Workbook(encoding=’utf-8’)# 二:創建sheet頁即工作表,對象是工作簿test_sheet = testbook.add_sheet(’新新人類’)# 三:寫入數據,1、下面是從別的文件讀取的數據,所以先打開一個文件data1 = xlrd.open_workbook(’C:UserscccccDocumentsPython學習筆記新新人類模板.xls’)# 2、再打開工作表table1 = data1.sheet_by_name(u’Sheet1’)# 3、row_values 獲取這個工作表第0行的整行數據,返回數組類型name1 = table1.row_values(0)# 4、獲取這個工作表的列數,返回intnrows1 = table1.ncols# 5、下面循環把第0行所有列的數據的依次寫入之前創建的工作表test_sheetfor j in range(nrows1): # 6、寫入數據,write(row,col,data)為工作表對象,表示在第row+1行第col列添加data數據 test_sheet.write(0, j, name1[j])# 四:保存文件名,下面是從別的文件獲取文件名data = xlrd.open_workbook(’C:UserscccccDocumentsPython學習筆記新新人類編號.xls’)table = data.sheet_by_name(u’Sheet1’)name = table.col_values(0)bank = table.col_values(1)nrows = table.nrowsfor i in range(nrows): bank1 = bank[i] # 把返回的數組里的每個先賦值變量bank1,再截取字符串的前4個,這里可以先加個判斷是否有4位,否則不足4位會報錯 bank2 = bank1[0:4] # 四、save保存文件 testbook.save(’C:UserscccccDocumentsPython學習筆記’+’新新-’+name[i]+’-’+bank2+’-.xls’)
[/code]
糾正在最后
代碼是從兩個Excel分別獲取的,代碼可以優化為1個Excel,數據放兩個工作表。
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持好吧啦網。
相關文章: