1、基本操作(读取)
import xlrd ''' 00137480 1 2 00137481 2 3 00137482 3 4 00137483 4 5 00137484 5 6 00137485 6 7 ''' #打开excel文件读取数据 date = xlrd.open_workbook('C:\Users\HZQ\Desktop\test.xls') #获取一个工作表 table = date.sheet_by_index(0) #通过索引顺序获取 table1 = date.sheet_by_name('Sheet1')#通过页签名获取 table2 = date.sheets() #通过索引顺序获取 print(table) print(table1) print(table2) #获取整行整列的值(list) row_values0 = table.row_values(0)#获取第一行 row_values1 = table.row_values(1)#获取第二行 print(row_values0) print(row_values1) col_values0 = table.col_values(0)#获取第一列 col_values1 = table.col_values(1)#获取第二列 print(col_values0) print(col_values1) #获取行数列数 nrows = table.nrows ncols = table.ncols print(nrows)#获取行数 print(ncols)#获取列数 #循环行列表数据 for i in range(nrows):#取行 print(i,table.row_values(i)) for i in range(ncols):#取列 print(i,table.col_values(i)) #获取单元格值 cell_A11 = table.cell(0,0).value#第一行第一列 cell_A21 = table.cell(1,0).value#第二行第一列 cell_B1 = table.cell(0,1).value#第一行第二列 print(cell_A11) print(cell_A21) print(cell_B1) #使用行列索引 cell_A1 = table.row(0)[0].value#第一行第一个数 cell_A2 = table.col(1)[0].value#第二列第一个数 cell_A3 = table.row(3)[2].value#第四行第三个 print(cell_A1) print(cell_A2) print(cell_A3)
2、从指定excelsheet读取某行某列的值
import xlrd #从指定excelsheet读取某行某列的值 def excel_table_byindex(filepwd,by_index,row,col): try: date = xlrd.open_workbook(filepwd) #获取excel所有sheet数 lst=date.sheets() print(lst) num_sheet =len(lst) print(num_sheet) #判断by_index 是否存在 if by_index<num_sheet: table = date.sheet_by_index(by_index)#查找指定页签 nrows = table.nrows#获取改页签行数 ncols = table.ncols#获取该页签列数 if row<nrows and col<ncols: print(table.cell(row-1,col-1).value) else: print(filepwd+"工作表没有该steet页签") else: print(filepwd+"工作表没有该steet页签") except Exception: print("文件不存在") filepwd='C:\Users\HZQ\Desktop\test.xls' excel_table_byindex(filepwd,0,1,1)