详解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多重继承新算法C3介绍
Sep 28 Python
总结用Pdb库调试Python的方式及常用的命令
Aug 18 Python
python将txt文件读取为字典的示例
Dec 22 Python
python读取文件名并改名字的实例
Jan 07 Python
详解Python Qt的窗体开发的基本操作
Jul 14 Python
pytorch实现线性拟合方式
Jan 15 Python
python机器学习库xgboost的使用
Jan 20 Python
django 实现手动存储文件到model的FileField
Mar 30 Python
python sitk.show()与imageJ结合使用常见的问题
Apr 20 Python
使用OpenCV获取图像某点的颜色值,并设置某点的颜色
Jun 02 Python
python实现三壶谜题的示例详解
Nov 02 Python
拒绝盗图!教你怎么用python给图片加水印
Jun 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中防止SQL注入最好的方法是什么
2013/06/10 PHP
PHP控制前台弹出对话框的实现方法
2016/08/21 PHP
Node.js 去掉种子(torrent)文件里的邪恶信息
2015/03/27 Javascript
JavaScript实现表格点击排序的方法
2015/05/11 Javascript
jQuery实现提示密码强度的代码
2015/07/15 Javascript
JavaScript导航脚本判断当前导航
2016/07/12 Javascript
利用Angular.js限制textarea输入的字数
2016/10/20 Javascript
js判断用户是输入的地址请求的路径(实例讲解)
2017/07/18 Javascript
浅谈Vue.js中的v-on(事件处理)
2017/09/05 Javascript
JS函数本身的作用域实例分析
2020/03/16 Javascript
[35:43]2018DOTA2亚洲邀请赛 4.1 小组赛B组 paiN vs Effect
2018/04/03 DOTA
[49:35]LGD vs OG 2018国际邀请赛淘汰赛BO3 第二场 8.25
2018/08/29 DOTA
Python之PyUnit单元测试实例
2014/10/11 Python
利用Python学习RabbitMQ消息队列
2015/11/30 Python
Python中 Lambda表达式全面解析
2016/11/28 Python
解决python3在anaconda下安装caffe失败的问题
2017/06/15 Python
python计算auc指标实例
2017/07/13 Python
python实现二叉树的遍历
2017/12/11 Python
使用Python爬了4400条淘宝商品数据,竟发现了这些“潜规则”
2018/03/23 Python
Python使用pickle模块储存对象操作示例
2018/08/15 Python
Python中is和==的区别详解
2018/11/15 Python
python解析含有重复key的json方法
2019/01/22 Python
Django中如何防范CSRF跨站点请求伪造攻击的实现
2019/04/28 Python
python+pygame实现坦克大战
2019/09/10 Python
python3利用Axes3D库画3D模型图
2020/03/25 Python
Jupyter notebook无法导入第三方模块的解决方式
2020/04/15 Python
Booking.com荷兰:全球酒店网上预订
2017/08/22 全球购物
Nike德国官网:Nike.com (DE)
2018/11/13 全球购物
门诊挂号室室长岗位职责
2013/11/27 职场文书
中年人生感言
2014/02/04 职场文书
计算机大学生职业生涯规划书范文
2014/02/19 职场文书
餐厅保洁员岗位职责
2015/04/10 职场文书
惊天动地观后感
2015/06/10 职场文书
盘点2020年适合农村地区创业的项目
2019/10/16 职场文书
浅谈Redis在直播场景的实践方案
2021/04/27 Redis
JavaScript实现简单的音乐播放器
2022/08/14 Javascript