用XLRD批处理Excel
生活随笔
收集整理的這篇文章主要介紹了
用XLRD批处理Excel
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
XLRD的目的就是為了程序化處理Excel文件而生
XLRD是Python的一個模塊
XLRD可以處理老式的XLS和新式的XLSX的Excel文件,利用這個模塊可以導入Excel工作簿中所有文件。
讀取文件
import xlrd def parse_file(datafile):workbook=xlrd.open_workbook(datafile) #用于打開工作簿sheet=workbook.sheet_by_index(0) #用于設置待處理的工作表,這里選擇表0data=[[sheet.cell_value(r,col)for col in range(sheet.ncols)]for r in range(sheet.nrows)] #這段代碼是遍歷所有的行和所有的列,并將數據讀取成python列表[1][1]的進一步解釋
實際上這一個語句類似于列表表達式
或者寫成這樣
result=[] for i in range(1,4):for j in range(1,4):result.append("{}_{}".format(i,j)) print result輸出結果如下所示
['1_1', '1_2', '1_3', '2_1', '2_2', '2_3', '3_1', '3_2', '3_3']format函數介紹
格式化字符串的函數str.format()
它通過{}和:來代替%。
“映射”示例
通過關鍵字參數
In [5]: '{name},{age}'.format(age=18,name='kzc') Out[5]: 'kzc,18'遍歷工作簿第50行
for row in range(sheet.nrows):for col in range(sheet.ncols):if row == 50:print sheet.cell_value(row, col) #把第50行中的內容全部打印出來,但一次只打印一列利用XLRD處理行列和單元格
print sheet.nrows #打印工作表中的行數 print sheet.cell_type(3, 2) #打印第3行2列數的數據類型 print sheet.cell_value(3, 2) #打印第3行2列數的值 print sheet.col_values(3, start_rowx=1, end_rowx=4) #將第3列的值進行切片,從第1行到第3行開始XLRD處理日期
exceltime = sheet.cell_value(1, 0) print xlrd.xldate_as_tuple(exceltime, 0) #使用xldate_as_tuple方法獲取時間,讓python當做日期進行處理 《新程序員》:云原生和全面數字化實踐50位技術專家共同創作,文字、視頻、音頻交互閱讀總結
以上是生活随笔為你收集整理的用XLRD批处理Excel的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: CSV文件读取和处理
- 下一篇: 用Python对XML读取和处理