详解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中常用的各种数据库操作模块和连接实例
May 29 Python
Python常用小技巧总结
Jun 01 Python
Python正则表达式实现截取成对括号的方法
Jan 06 Python
Python实现的弹球小游戏示例
Aug 01 Python
Python实现的微信支付方式总结【三种方式】
Apr 13 Python
python的pytest框架之命令行参数详解(上)
Jun 27 Python
python实现两个字典合并,两个list合并
Dec 02 Python
Python求两个字符串最长公共子序列代码实例
Mar 05 Python
Python 列表中的修改、添加和删除元素的实现
Jun 11 Python
Scrapy+Selenium自动获取cookie爬取网易云音乐个人喜爱歌单
Feb 01 Python
手把手教你实现PyTorch的MNIST数据集
Jun 28 Python
Python内置包对JSON文件数据进行编码和解码
Apr 12 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制作图型计数器的例子
2006/10/09 PHP
打造超酷的PHP数据饼图效果实现代码
2011/11/23 PHP
php常用Output和ptions/Info函数集介绍
2013/06/19 PHP
php的数组与字符串的转换函数整理汇总
2013/07/18 PHP
php缩放gif和png图透明背景变成黑色的解决方法
2014/10/14 PHP
PHP判断一个字符串是否是回文字符串的方法
2015/03/23 PHP
php读取der格式证书乱码解决方法
2015/06/22 PHP
Windows上php5.6操作mongodb数据库示例【配置、连接、获取实例】
2019/02/13 PHP
非常漂亮的JS代码经典广告
2007/10/21 Javascript
javascrip客户端验证文件大小及文件类型并重置上传
2011/01/12 Javascript
jQuery 获取浏览器所在的IP地址的小例子
2013/11/08 Javascript
jquery中的$(document).ready()使用小结
2014/02/14 Javascript
Javascript基础教程之变量
2015/01/18 Javascript
JavaScript实现下拉菜单的显示和隐藏
2016/01/05 Javascript
javascript单页面手势滑屏切换原理详解
2016/03/21 Javascript
使用jQuery制作Web页面遮罩层插件的实例教程
2016/05/26 Javascript
全面理解JavaScript中的继承(必看)
2016/06/16 Javascript
javascript DOM的详解及实例代码
2017/03/06 Javascript
parabola.js抛物线与加入购物车效果的示例代码
2017/10/25 Javascript
微信小程序基于canvas渐变实现的彩虹效果示例
2019/05/03 Javascript
Moment.js实现多个同时倒计时
2019/08/26 Javascript
layui 实现表格某一列显示图标
2019/09/19 Javascript
Vue通过配置WebSocket并实现群聊功能
2019/12/31 Javascript
vue-cli3项目打包后自动化部署到服务器的方法
2020/09/16 Javascript
Python学习入门之区块链详解
2017/07/25 Python
python爬虫headers设置后无效的解决方法
2017/10/21 Python
python使用Tkinter实现在线音乐播放器
2018/01/30 Python
numpy判断数值类型、过滤出数值型数据的方法
2018/06/09 Python
瑞士国际航空官网:SWISS
2016/07/21 全球购物
《九色鹿》教学反思
2014/02/27 职场文书
英语课前三分钟演讲稿
2014/08/19 职场文书
入党积极分子学习党的纲领思想汇报
2014/09/13 职场文书
2014年除四害工作总结
2014/12/06 职场文书
八年级上册语文教学计划
2015/01/22 职场文书
市场总监岗位职责
2015/02/11 职场文书
2015年班组工作总结
2015/04/20 职场文书