详解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 文件读写操作实例详解
Mar 12 Python
非递归的输出1-N的全排列实例(推荐)
Apr 11 Python
Python之csv文件从MySQL数据库导入导出的方法
Jun 21 Python
Python使用pymysql从MySQL数据库中读出数据的方法
Jul 25 Python
python正则-re的用法详解
Jul 28 Python
Python实现朴素贝叶斯的学习与分类过程解析
Aug 24 Python
使用python 对验证码图片进行降噪处理
Dec 18 Python
PyTorch学习:动态图和静态图的例子
Jan 06 Python
tensorflow模型继续训练 fineturn实例
Jan 21 Python
Python3+Selenium+Chrome实现自动填写WPS表单
Feb 12 Python
Keras 加载已经训练好的模型进行预测操作
Jun 17 Python
python爬虫请求头设置代码
Jul 28 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
微信access_token的获取开发示例
2015/04/16 PHP
PHP动态生成指定大小随机图片的方法
2016/03/25 PHP
php版银联支付接口开发简明教程
2016/10/14 PHP
CI框架(CodeIgniter)公共模型类定义与用法示例
2017/08/10 PHP
Ext第一周 史上最强学习笔记---GridPanel(基础篇)
2008/12/29 Javascript
百度移动版的url编码解码示例
2014/04/29 Javascript
nodejs中实现路由功能
2014/12/29 NodeJs
javascript实现简单的进度条
2015/07/02 Javascript
asp.net中oracle 存储过程(图文)
2015/08/12 Javascript
JS+CSS实现经典的左侧竖向滑动菜单效果
2015/09/23 Javascript
JavaScript实现的商品抢购倒计时功能示例
2017/04/17 Javascript
vue项目实现github在线预览功能
2018/06/20 Javascript
vue-cli 引入jQuery,Bootstrap,popper的方法
2018/09/03 jQuery
Vue监听一个数组id是否与另一个数组id相同的方法
2018/09/26 Javascript
利用hasOwnProperty给数组去重的面试题分享
2018/11/05 Javascript
vue组件实践之可搜索下拉框功能
2018/11/25 Javascript
在微信小程序中使用图表的方法示例
2019/04/25 Javascript
Node.js控制台彩色输出的方法与原理实例详解
2019/12/01 Javascript
Angular5整合富文本编辑器TinyMCE的方法(汉化+上传)
2020/05/26 Javascript
微信小程序自定义modal弹窗组件的方法详解
2020/12/20 Javascript
[02:40]DOTA2英雄基础教程 先知
2013/11/29 DOTA
[10:21]DOTA2-DPC中国联赛 正赛 PSG.LGD vs Aster 选手采访
2021/03/11 DOTA
在DigitalOcean的服务器上部署flaskblog应用
2015/12/19 Python
Python完成哈夫曼树编码过程及原理详解
2019/07/29 Python
Python在后台自动解压各种压缩文件的实现方法
2020/11/10 Python
HTML5本地存储之Web Storage详解
2016/07/04 HTML / CSS
NBA欧洲商店(西班牙):NBA Europe Store ES
2019/04/16 全球购物
Furla官网:意大利著名的皮革品牌
2019/08/06 全球购物
集团公司人力资源部岗位职责
2014/01/03 职场文书
教师简历自我评价
2014/02/03 职场文书
挂职锻炼个人总结
2015/03/05 职场文书
大学生读书笔记大全
2015/07/01 职场文书
会议室管理制度范本
2015/08/06 职场文书
创业计划书之零食店(进口)
2019/09/24 职场文书
springboot 自定义配置 解决Boolean属性不生效
2022/03/18 Java/Android
Java 获取Word中所有的插入和删除修订的方法
2022/04/06 Java/Android