博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Python xlrd 读取xls文件
阅读量:6989 次
发布时间:2019-06-27

本文共 1899 字,大约阅读时间需要 6 分钟。

hot3.png

# -*- coding: utf-8 -*- import sysimport xlrdfrom string import Templatedef open_excel(file= 'file.xls'):    try:        data = xlrd.open_workbook(file)        return data    except Exception,e:        print str(e)#根据索引获取Excel表格中的数据   参数:file:Excel文件路径     colnameindex:表头列名所在行的所以  ,by_index:表的索引def excel_table_byindex(file= 'file.xls',colnameindex=0,by_index=0):    data = open_excel(file)    table = data.sheets()[by_index]    nrows = table.nrows #行数    ncols = table.ncols #列数    colnames =  table.row_values(colnameindex) #某一行数据     list =[]    for rownum in range(1,nrows):         row = table.row_values(rownum)         if row:             app = {}             for i in range(len(colnames)):                app[colnames[i]] = row[i]              list.append(app)    return list#根据名称获取Excel表格中的数据   参数:file:Excel文件路径     colnameindex:表头列名所在行的所以  ,by_name:Sheet1名称def excel_table_byname(file= 'file.xls',colnameindex=0,by_name=u'Sheet1'):    data = open_excel(file)    table = data.sheet_by_name(by_name)    nrows = table.nrows #行数     colnames =  table.row_values(colnameindex) #某一行数据     list =[]    for rownum in range(1,nrows):         row = table.row_values(rownum)         if row:             app = {}             for i in range(len(colnames)):                app[colnames[i]] = row[i]             list.append(app)    return listdef main():   tables = excel_table_byindex()   for row in tables:       print row   tables = excel_table_byname()   for row in tables:           print row       def run():    filepath = unicode(r"E:\workspace\doc\代码修改\各网点联系方式.xls", 'utf-8').encode("cp936")    tables = excel_table_byindex(file=filepath)    temp = Template('
$name')    for row in tables:        d = dict(name=row.get(row.keys()[1]).encode("utf-8"))        print temp.safe_substitute(d)if __name__=="__main__":    # main()    run()

163416_rjoy_251225.png

转载于:https://my.oschina.net/dexterman/blog/212438

你可能感兴趣的文章
C#多线程编程
查看>>
maven下的jar项目打包的方法
查看>>
为确保固定资产的财务帐与实物帐一致,应采取的措施
查看>>
带你从零学ReactNative开发跨平台App开发-[react native 仿boss直聘](十三)
查看>>
c#的托管代码和非托管代码的理解
查看>>
Laravel学习笔记之Session源码解析(上)
查看>>
Java NIO vs. IO
查看>>
Add Two Numbers
查看>>
用Thymeleaf在前台下拉列表取值
查看>>
Java strictfp
查看>>
新建jsp项目
查看>>
numpy.loadtxt()
查看>>
Chrome 调用vue.js 记录
查看>>
将float转换为数据类型numeric时出现算术溢出错误
查看>>
Sqlserver2008R2配置数据库镜像之我的经验总结
查看>>
RDS经典网络平滑迁移到VPC的混访方案
查看>>
svg矢量图制作工具(Sketsa SVG Editor) v7.1.1 中文免费版
查看>>
洛谷P2761 软件补丁问题(状压DP,SPFA)
查看>>
[osg][opengl]透视投影的参数Perspective
查看>>
总结!!!!!
查看>>