使用xlrd读取excel表格,获取指定值的单元格位置

excel表格样式:

 

 


代码展示:

import xlrd

filename = 'demo.xlsx'
sheet_name = 'Sheet1'

#打开workbook获取Book对象
BookObject = xlrd.open_workbook(filename)

#获取Book对象中所有sheet名称
BookObject.sheet_names()

#获取Book对象中所有Sheet对象,以列表形式显示
BookObject.sheets()

#通过sheet名称获取所需sheet对象
SheetObject = BookObject.sheet_by_name(sheet_name)

#获取工作表中第num+1列的内容,此列为列表格式
num1 = 0
col_list = SheetObject.col_values(num1)
#print(col_list) ['', '', '各轮次中奖人数']

#‘各轮次中奖人数’这个值所在行为row_num:
row_num = col_list.index('各轮次中奖人数')+1
col_num = num1+1
#print('【各轮次中奖人数】在第%s行,第%s列'%(row_num,col_num)) 【各轮次中奖人数】在第3行,第1列

#获取指定单元格所在行的值
row_value_list = SheetObject.row_values(col_list.index('各轮次中奖人数'))
#print(row_value_list) ['各轮次中奖人数', 2.0, 1.0, 0.0]

#若想获取的行数据中去除空值,可以使用以下方式
list_vluaes=[]
for i in row_value_list:
if i != '':
list_vluaes.append(i)
#print(list_vluaes) ['各轮次中奖人数', 2.0, 1.0, 0.0]
posted @ 2021-12-01 22:36  Doraaaaaaaaaa  阅读(1203)  评论(1编辑  收藏  举报