详解python中xlrd包的安装与处理Excel表格


Posted in Python onDecember 16, 2016

一、安装xlrd

地址

下载后,使用 pip install .whl 安装即好。

查看帮助:

>>> import xlrd
>>> help(xlrd)
Help on package xlrd:

NAME 
 xlrd

PACKAGE CONTENTS 
 biffh
 book
 compdoc
 formatting
 formula
 info
 licences
 sheet
 timemachine
 xldate
 xlsx

FUNCTIONS 
 count_records(filename, outfile=<idlelib.PyShell.PseudoOutputFile object at 0x0287E730>)

 dump(filename, outfile=<idlelib.PyShell.PseudoOutputFile object at 0x0287E730>, unnumbered=False)

 open_workbook(filename=None, logfile=<idlelib.PyShell.PseudoOutputFile object at 0x0287E730>, verbosity=0, use_mmap=1, file_contents=None, encoding_override=None, formatting_info=False, on_demand=False, ragged_rows=False)

DATA 
 FMLA_TYPE_ARRAY = 4
 FMLA_TYPE_CELL = 1
 FMLA_TYPE_COND_FMT = 8
 FMLA_TYPE_DATA_VAL = 16
 FMLA_TYPE_NAME = 32
 FMLA_TYPE_SHARED = 2
 MMAP_AVAILABLE = 1
 USE_MMAP = 1
 XL_CELL_BLANK = 6
 XL_CELL_BOOLEAN = 4
 XL_CELL_DATE = 3
 XL_CELL_EMPTY = 0
 XL_CELL_ERROR = 5
 XL_CELL_NUMBER = 2
 XL_CELL_TEXT = 1
 __VERSION__ = '1.0.0'
 biff_text_from_num = {0: '(not BIFF)', 20: '2.0', 21: '2.1', 30: '3', ...
 empty_cell = empty:''
 error_text_from_code = {0: '#NULL!', 7: '#DIV/0!', 15: '#VALUE!', 23: ...
 oBOOL = 3
 oERR = 4
 oNUM = 2
 oREF = -1
 oREL = -2
 oSTRG = 1
 oUNK = 0
 okind_dict = {-2: 'oREL', -1: 'oREF', 0: 'oUNK', 1: 'oSTRG', 2: 'oNUM'...

FILE 
 c:\python34\lib\site-packages\xlrd\__init__.py

通过上述方法可以查看xlrd的帮助信息,里面有xlrd包中的一些模块以及一些成员变量、常量、函数。

二、python处理Excel表格

1、打开Excel表

import xlrd

# 获取一个Book对象
book = xlrd.open_workbook("1.xls")

# 获取一个sheet对象的列表
sheets = book.sheets()

# 遍历每一个sheet,输出这个sheet的名字(如果是新建的一个xls表,可能是sheet1、sheet2、sheet3)
for sheet in sheets: 
 print(sheet.name)

上面的帮助信息出现了这个函数:open_workbook() ,打开工作簿,这就打开了Excel表。

返回的是一个Book对象,通过Book对象我们可以获得一个Sheet的列表,上面的程序就简单地把每个sheet的名字都输了出来。

2、读出指定单元格内的数据

import xlrd

# 获取一个Book对象
book = xlrd.open_workbook("1.xls")

# 获取一个sheet对象的列表
sheets = book.sheets()

# 遍历每一个sheet,输出这个sheet的名字(如果是新建的一个xls表,可能是sheet1、sheet2、sheet3)
for sheet in sheets: 
 print(sheet.cell_value(0, 0))

读出单元格内数据函数 cell_value(row, col) ,行列均从0起。

除此之外,可以通过:

sheet.cell(row, col) # 获取单元格对象 
sheet.cell_type(row, col) # 获取单元格类型

3、读取日期数据

如果Excel存储的某一个单元格数据是日期的话,需要进行一下处理,转换为datetime类型

from datetime import datetime 
from xlrd import xldate_as_tuple

# 获取一个Book对象
book = xlrd.open_workbook("1.xls")

# 获取一个sheet对象的列表
sheets = book.sheets()

timeVal = sheets[0].cell_value(0,0)

timestamp = datetime(*xldate_as_tuple(timestamp, 0))

print(timestamp)

4、遍历每行的数据

rows = sheet.get_rows() 
for row in rows: 
 print(row[0].value) # 输出此行第一列的数据

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家学习或者使用python能带来一定的帮助,如果有疑问大家可以留言交流。

Python 相关文章推荐
对于Python装饰器使用的一些建议
Jun 03 Python
Python验证企业工商注册码
Oct 25 Python
Python下的常用下载安装工具pip的安装方法
Nov 13 Python
详解Python开发中如何使用Hook技巧
Nov 01 Python
python面向对象多线程爬虫爬取搜狐页面的实例代码
May 31 Python
pytorch + visdom CNN处理自建图片数据集的方法
Jun 04 Python
Python 爬取携程所有机票的实例代码
Jun 11 Python
基于wxPython的GUI实现输入对话框(2)
Feb 27 Python
python仿抖音表白神器
Apr 08 Python
python图像和办公文档处理总结
May 28 Python
pandas的排序和排名的具体使用
Jul 31 Python
python3实现绘制二维点图
Dec 04 Python
详解python开发环境搭建
Dec 16 #Python
python制作爬虫爬取京东商品评论教程
Dec 16 #Python
python用模块zlib压缩与解压字符串和文件的方法
Dec 16 #Python
Python用UUID库生成唯一ID的方法示例
Dec 15 #Python
python常见的格式化输出小结
Dec 15 #Python
python中子类继承父类的__init__方法实例
Dec 15 #Python
利用Python中SocketServer 实现客户端与服务器间非阻塞通信
Dec 15 #Python
You might like
PHP编程最快明白(第一讲 软件环境和准备工作)
2010/10/25 PHP
php+mysql+ajax 局部刷新点赞/取消点赞功能(每个账号只点赞一次)
2020/07/24 PHP
Prototype源码浅析 String部分(二)
2012/01/16 Javascript
js获取某月的最后一天日期的简单实例
2013/06/22 Javascript
javascript放大镜效果的简单实现
2013/12/09 Javascript
jQuery实现Div拖动+键盘控制综合效果的方法
2015/03/10 Javascript
浅谈angularJS 作用域
2015/07/05 Javascript
Bootstrap中的表单验证插件bootstrapValidator使用方法整理(推荐)
2016/06/21 Javascript
jQuery多个版本和其他js库冲突的解决方法
2016/08/11 Javascript
JavaScript正则表达式实例详解
2016/10/16 Javascript
概述javascript在Google IE中的调试技巧
2016/11/24 Javascript
JavaScript实现二叉树的先序、中序及后序遍历方法详解
2017/10/26 Javascript
微信小程序-getUserInfo回调的实例详解
2017/10/27 Javascript
react-router v4如何使用history控制路由跳转详解
2018/01/09 Javascript
详解滑动穿透(锁body)终极探索
2019/04/16 Javascript
JavaScript之数组扁平化详解
2019/06/03 Javascript
微信小程序实现页面跳转传递参数(实体,对象)
2019/08/12 Javascript
webpack 如何同时输出压缩和未压缩的文件的实现步骤
2020/06/05 Javascript
Python  __getattr__与__setattr__使用方法
2008/09/06 Python
举例讲解Linux系统下Python调用系统Shell的方法
2015/11/07 Python
Python实现信用卡系统(支持购物、转账、存取钱)
2016/06/24 Python
Python实现针对给定单链表删除指定节点的方法
2018/04/12 Python
详解小白之KMP算法及python实现
2019/04/04 Python
Python 实现输入任意多个数,并计算其平均值的例子
2019/07/16 Python
Django之路由层的实现
2019/09/09 Python
欧舒丹英国官网:购买欧舒丹护手霜等明星产品
2017/01/17 全球购物
cosme官方海外旗舰店:日本最大化妆品和美容产品的综合口碑网站
2017/01/18 全球购物
英国高街电视:High Street TV
2018/05/22 全球购物
班干部演讲稿
2014/04/24 职场文书
社团个人总结范文
2015/03/05 职场文书
2015社区健康教育工作总结
2015/05/20 职场文书
宝宝满月宴答谢词
2015/09/30 职场文书
小学语文教师研修日志
2015/11/13 职场文书
数学复习课教学反思
2016/02/18 职场文书
JavaScript 去重和重复次数统计
2021/03/31 Javascript
深入浅析React中diff算法
2021/05/19 Javascript