python操作Excel 常用的两个库是xlrdxlwtopenpyxl我很少用,以后再写。另外pandas做数据分析也很有名,看我能不能约个朋友来写。

今天咱们先介绍读取Excelxlrd。我这里使用的文件格式是xls,办公软件是金山的wps

安装模块

  1. pip install xlrd -i https://pypi.douban.com/simple/
  2. pip install xlwt -i https://pypi.douban.com/simple/

读取excel - 图1

示例表格

读取excel - 图2

常用方法

打开文件

  1. wb= xlrd.open_workbook(r'测试用例模版.xls')

获取sheet

  1. import xlrd
  2. # 打开文件
  3. wb = xlrd.open_workbook(r'测试用例模版.xls')
  4. # 获取sheet
  5. sheetName = wb.sheet_names()
  6. sheetNums = wb.sheets()
  7. sheetByName = wb.sheet_by_name(u"功能测试用例模版")
  8. sheetByIndex = wb.sheet_by_index(1)
  9. print("获取sheet名称:", sheetName)
  10. print("获取sheet的个数:", sheetNums)
  11. print("通过名称获取响应的sheet:", sheetByName)
  12. print("通过索引获取响应的sheet", sheetByIndex)

获取sheet内的数据

  1. sheetByName = wb.sheet_by_name(u"功能测试用例模版")
  2. cloNums=sheetByName.ncols
  3. rowNums=sheetByName.nrows
  4. print ("获取总列数:",cloNums)
  5. print("获取总行数:",rowNums)

单元格批量读取

  1. # 行操作:
  2. print('==========行操作============')
  3. print(sheetByName.row_values(0))#获取第1行的值 若是合并单元格 首行显示值 其它为空
  4. print(sheetByName.row_values(1))#获取第2行的值 若是合并单元格 首行显示值 其它为空
  5. print(sheetByName.row_values(2))#获取第3行的值 若是合并单元格 首行显示值 其它为空
  6. print(sheetByName.row_values(3))#获取第4行的值 若是合并单元格 首行显示值 其它为空
  7. # 列操作:
  8. print('==========列操作============')
  9. print(sheetByName.col_values(0))#获取第1列的值 若是合并单元格 首行显示值 其它为空
  10. print(sheetByName.col_values(1))#获取第2列的值 若是合并单元格 首行显示值 其它为空
  11. print(sheetByName.col_values(2))#获取第3列的值 若是合并单元格 首行显示值 其它为空
  12. print(sheetByName.col_values(3))#获取第4列的值 若是合并单元格 首行显示值 其它为空
  13. # 表操作
  14. print('==========表操作============')
  15. sheetByName.row_values(0, 6, 10) # 取第1行,第6~10列(不含第10表)
  16. sheetByName.col_values(0, 0, 5) # 取第1列,第0~5行(不含第5行)
  17. sheetByName.row_slice(2, 0, 2) # 获取单元格值类型和内容

以上内容打印的结果是:
读取excel - 图3

最后赠送个小技巧

相比大家经常需要知道表格处于第几行,那么这个技巧对你有帮助
读取excel - 图4

参考文章:

https://www.cnblogs.com/puresoul/p/7520198.html