python操作excel常用的方法
讀操作模塊安裝
pip install xlrd
寫操作模塊安裝
pip install xlwt
xlrd讀操作
1、打開excel
xl = xlrd.open_workbook('test.xls')
2、通過索引獲取工作表
table = xl.sheet()[0] #有多個(gè)sheet,獲取第一個(gè)sheet
3、獲取第一行的內(nèi)容
row = table.row_values(0)
4、獲取第一列的內(nèi)容
col = table.col_values(0)
5、獲取行數(shù)、列數(shù)
table.nrows
table.ncols
6、單元格的值
table.cell(0,0).value
7、日期、合并單元格的值
合并的單元格的值默認(rèn)可以從最頂層的行獲取
獲取日期
xlrd.xldate_as_tuple(table.cell_values(1,4),xl.datemode)
8、type類型
0 empty,1 string, 2 number, 3 date, 4 boolean, 5 error
示例代碼:
1 #!/usr/bin/env python 2 # -*- coding:utf-8 -*- 3 4 import xlrd 5 6 # 打開Excel文件 7 workbook = xlrd.open_workbook('test.xlsx') 8 9 # 輸出Excel文件中所有sheet的名字 10 print workbook.sheet_names() 11 12 # 根據(jù)sheet索引或者名稱獲取sheet內(nèi)容 13 Data_sheet = workbook.sheets()[0] 14 CdfData_sheet = workbook.sheet_by_index(1) 15 Charts_sheet = workbook.sheet_by_name(u'Charts') 16 17 # 獲取sheet名稱、行數(shù)和列數(shù) 18 print Data_sheet.name, Data_sheet.nrows, Data_sheet.ncols, \ 19 CdfData_sheet.name, CdfData_sheet.nrows, CdfData_sheet.ncols, \ 20 Charts_sheet.name, Charts_sheet.nrows, Charts_sheet.ncols 21 22 # 獲取整行和整列的值(列表 23 rows = Data_sheet.row_values(0) # 獲取第一行內(nèi)容 24 cols = Data_sheet.col_values(1) # 獲取第二列內(nèi)容 25 # print rows 26 # print cols 27 28 # 獲取單元格內(nèi)容 29 cell_A1 = Data_sheet.cell(0, 0).value 30 cell_C1 = Data_sheet.cell(0, 2).value 31 cell_B1 = Data_sheet.row(0)[1].value 32 cell_D2 = Data_sheet.col(3)[1].value 33 print cell_A1, cell_B1, cell_C1, cell_D2 34 35 # 獲取單元格內(nèi)容的數(shù)據(jù)類型 36 # ctype:0 empty,1 string, 2 number, 3 date, 4 boolean, 5 error 37 print 'cell(0,0)數(shù)據(jù)類型:', Data_sheet.cell(0, 0).ctype 38 print 'cell(1,0)數(shù)據(jù)類型:', Data_sheet.cell(1, 0).ctype 39 print 'cell(1,1)數(shù)據(jù)類型:', Data_sheet.cell(1, 1).ctype 40 print 'cell(1,2)數(shù)據(jù)類型:', Data_sheet.cell(1, 2).ctype 41 42 # 獲取單元格內(nèi)容為日期的數(shù)據(jù) 43 date_value = xlrd.xldate_as_tuple(Data_sheet.cell_value(1, 0), workbook.datemode) 44 print date_value 45 print '%d:%d:%d' % (date_value[3:]) 46 47 d = {'11:25:59': [1, 2, 3], '11:26:00': [2, 3, 4], '11:26:01': [3, 4, 5]} 48 print d['11:25:59'] 49 print d['11:26:00'] 50 print d['11:26:01']xlrd寫操作
1、創(chuàng)建excel
xl = xlwt.Workbook()
2、創(chuàng)建工作表
table = xl.add_sheet(name)
3、寫內(nèi)容
table.write(row,col,cell)
4、寫入并設(shè)置單元格式
table.write(row,col,cell,style)
5、合并單元格寫入
table.write_merge(x,x+n,y,y+m,cell)
6、保存單元格
Workbook.save('demo.xls')
示例代碼:
1 #!/usr/bin/env python 2 # -*- coding:utf-8 -*- 3 4 import xlwt 5 6 def set_style(name, height, bold=False): 7 style = xlwt.XFStyle() 8 9 font = xlwt.Font() 10 font.name = name 11 font.bold = bold 12 font.color_index = 4 13 font.height = height 14 15 style.font = font 16 return style 17 18 def write_excel(): 19 # 創(chuàng)建工作簿 20 workbook = xlwt.Workbook(encoding='utf-8') 21 # 創(chuàng)建sheet 22 data_sheet = workbook.add_sheet('demo') 23 row0 = [u'字段名稱', u'時(shí)間', 'CRNTI', 'CELL-ID'] 24 row1 = [u'測(cè)試字段', '15:50:33-15:52:14', 22706, 4190202] 25 26 # 生成第一行和第二行 27 for i in range(len(row0)): 28 data_sheet.write(0, i, row0[i], set_style('Times New Roman', 220, True)) 29 data_sheet.write(1, i, row1[i], set_style('Times New Roman', 220, True)) 30 31 workbook.save('demo.xls') 32 33 if __name__ == '__main__': 34 write_excel()?
轉(zhuǎn)載于:https://www.cnblogs.com/gide/p/8573319.html
總結(jié)
以上是生活随笔為你收集整理的python操作excel常用的方法的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 数据类型总结(干货)
- 下一篇: 毕业设计后续工作目标