情景:当我们需要从excel表中筛选出符合某个条件的数据,例如我们需要从附加标签中筛选出2班的行数据

import xlrd
import xlwt

#需处理的文件名
file = '0422.xlsx'

#读取文件
data = xlrd.open_workbook(file)

#读取要处理的表名
table = data.sheet_by_name("1")

nrows = table.nrows#行数
ncols = table.ncols#列数

print(nrows-1)
#添加表头
workbook = xlwt.Workbook(encoding='utf-8')
new_sheet=workbook.add_sheet('test')



data = input('输入你想要筛选的数据,format(#2班)\n')
#data1 = input('输入第几列,format(3)\n')

rank_list = []
for i in range (1,nrows):
	if table.row_values(i)[6]==data: #筛选第几列就改 [1] 里的数字
		rank_list.append(i)
print(rank_list)

#写表头
for i in range(ncols):
	new_sheet.write(0,i,table.cell(0,i).value)

for i in range(len(rank_list)):
	for j in range(ncols):
		new_sheet.write(i+1, j, table.cell(rank_list[i],j).value)

workbook.save('shaixuanhou.xls')

 输出结果如下

 

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐