#coding: utf8
import re
import xlrd
def get_excel():
###文件绝对路径
xfile=r'D:\test.xlsx'
book=xlrd.open_workbook(xfile)
###打开第3个SHEET页
table=book.sheets()[0]
###标识字典
b_list={}
biaoshi=''
###获取行数和列数
nrows=table.nrows
ncols=table.ncols
target_list=[]
target_list2=[]
###获取标识头
for i1 in range(ncols):
for j in table.col_values(i1):
b_list[i1]=j
break
###打印表头
for i2 in b_list:
print i2,b_list[i2]
biaoshi=biaoshi+b_list[i2]+' '
###在列里面进行查询
tiaojian=int(raw_input(u'请输入你要查询条件的次数:\n'))
for i in range(tiaojian):
chaxun1=int(raw_input(u'请输入你要查询的字段对应号(参照上图):\n'))
chaxun_neirong=raw_input(u'请输入你要查询的字段内容:\n')
#####判断搜索数据在哪行并打印
for k in range(nrows):
huajian=table.cell(k,chaxun1).value
try:
huajian=str(huajian)
except:
pass
try:
if re.search(chaxun_neirong,huajian).group():
if k in target_list:
target_list2.append(k)
else:
target_list.append(k)
except:
pass
if len(target_list)>len(target_list2) and target_list2 != []:
target_list=target_list2
target_list2=[]
else:
pass
print biaoshi
for fi in target_list:
for fi1 in table.row_values(fi):
print fi1,
print '\n'
get_excel()