Python Excel数据查找
来源:互联网 发布:java 中的super this 编辑:程序博客网 时间:2024/06/05 19:06
今天突然被老师叫去帮她统计成绩,然后发现是一个大坑。为什么这么说呢:
因为她英语成绩竟然 分了20个excel文件来存。
我们要查找出数学50以上,并且英语90以上的人。这就很尴尬了,我们本来打算都打开来查,但是我的mac打开excel表格的速度实在不敢恭维。怎么办,一个一个查太慢了,有70个人呢。于是乎晚上搜索一下,决定快速写一个脚本来进行查询。
- xlrd 使用介绍
- 实际使用
- Talk is cheapshow me the code
- 总结
xlrd 使用介绍
1、导入模块
import xlrd
2、打开Excel文件读取数据
data = xlrd.open_workbook(‘excelFile.xls’)
3、使用技巧
获取一个工作表
table = data.sheets()[0] #通过索引顺序获取
table = data.sheet_by_index(0) #通过索引顺序获取
table = data.sheet_by_name(u’Sheet1’)#通过名称获取
* 获取整行和整列的值(数组)*
table.row_values(i)
table.col_values(i)
* 获取行数和列数*
nrows = table.nrows
ncols = table.ncols
循环行列表数据
for i in range(nrows ):
print table.row_values(i)
单元格
cell_A1 = table.cell(0,0).value
cell_C4 = table.cell(2,3).value
使用行列索引
cell_A1 = table.row(0)[0].value
cell_A2 = table.col(1)[0].value
简单的写入
row = 0
col = 0
# 类型 0 empty,1 string, 2 number, 3 date, 4 boolean, 5 error
ctype = 1 value = ‘单元格的值’
xf = 0 # 扩展的格式化
table.put_cell(row, col, ctype, value, xf)
table.cell(0,0) #单元格的值’
table.cell(0,0).value #单元格的值’
实际使用
我的目的是遍历所有的excel表格,然后根据统计出来的50分以上的人的学号的最后几位, 查询出他的姓名和英语成绩。
表格内容:
Talk is cheap,show me the code!
# -*- coding:utf8 -*-import xlrdimport osid = u'85028'def find(path,id): for rt, dirs, files in os.walk(path): for f in files: if f != ".DS_Store": path = rt+os.path.sep+f workbook = xlrd.open_workbook(path) sheet_names = workbook.sheet_names() all_value = workbook.sheet_by_index(0) length = all_value.nrows for i in xrange(length): row = all_value.row_values(i) if id in row[0]: print row[1].encode('utf8'),row[8] # print path # breakif __name__ == "__main__": path = r"/Users/liruopeng/Downloads/score/english" while 1: nID = raw_input("请输入学号中的一部分:") find(path,nID)
输出结果:
请输入学号中的一部分:85028张立维 94.0
总结
python 操作 excel还是比价容易的,边查遍写,该脚本在15分钟以内就写完了。在后续的查找中,大幅度提高了我们的效率。不过下次还有这样的事,还是把数据导入到数据库中吧。
- Python Excel数据查找
- excel 查找出相同数据
- Python处理Excel数据
- Python处理Excel数据
- python读取excel数据
- python读取excel数据
- Python处理excel数据
- python 读取excel数据
- python读取excel数据
- python读取Excel数据
- Python 处理Excel数据
- python Excel追加数据
- 用python查找excel里面的某一列的重复数据,剔除之后打印
- python中查找excel某一列的重复数据 剔除之后打印
- excel函数vlookup--查找需要的数据
- Excel怎样查找删除重复数据
- Excel查找筛选并删除重复数据
- EXCEL查找SQL SERVER数据库的数据
- JS生成 UUID的四种方法
- uva10905 最大整数组合
- apt-get install E: Encountered a section with no Package: header
- try, catch,finally ,return 执行顺序及详解
- View的工作流程-measure、layout、draw三大流程
- Python Excel数据查找
- 476. Number Complement(给一个数字求反)
- mvc和spring的结合使用
- SwipeMenuRecyclerView的使用,侧滑删除
- 1093:输入输出练习1
- 麻省理工大学公开课笔记:算法导论(一)——引言
- XShell上传、下载本地文件到linux服务器
- python之禅
- DotSpatial学习之路——添加栅格数据扩展