简介

xlrd是python的一个第三方模块,可以实现跨平台读Microsoft Excel文件。(它有一个兄弟叫xlwt,专注于写Excel文件。)

它并不像win2com那样借助COM技术来访问Excel,而是直接分析Excel文件格式,从中解析数据。因此你可以在任何支持python的平台上使用excel文件。这一点它比win2com要优秀得多。

另外,它对unicode支持的很好,这也是我青睐它的重要原因。

它的工作原理所限,我们不能期望它覆盖Excel全部的功能,访问到全部的数据。

比如,下面这些数据类型xlrd会忽略掉:

图表,宏,图片等嵌入对象(包括嵌入的worksheet)。

VBA模块。

公式(只能识别公式的计算结果,而不是公式本身)。

注释。

链接。

但一些简单的读取还是得心应手的,这已经能满足大多数情况下的需求。

现在它能支持的Excel版本包括:2004, 2003, XP, 2000, 97, 95, 5.0, 4.0, 3.0, 2.1, 2.0。 官方未说明它是否能支持Excel 2007。

它有两个分支,分别是:

这两个分支是100%兼容的,也就是说,它们的使用完全一样,你在3.x系列中怎么用xlrd,在2.x系列中仍然这么用。

以下的实际操作都使用xlrd3,在python 3.2下完成。

安装

xlrd在python官网的发布主页是http://pypi.python.org/pypi/xlrd3 ,当前xlrd3的最新版本是0.1.4。

下载得到一个压缩包,假设我们将它解压到D:\Download\xlrd3-0.1.4,可以看到如下文件。

可以看到有文档、示例、测试文件等。注意其中的setup.py,它是标准的python模块安装方式。

先确认一下python的版本与xlrd3是否一致。

D:\Download\xlrd3-0.1.4>python -V

Python 3.2.2

OK,我们用的是python3,接下来执行安装脚本。

D:\Download\xlrd3-0.1.4>python setup.py install

一长串输出后,没有看到错误的话,xlrd就安装成功了。

试用

假设我们有一个文件叫test.xls,位于D:\Workspace\Python\xlrd3-test\test.xls

其内容如下:

ff

这是一张9行4列的PC主机报价单,当然,价格全是扯淡。

下面使用xlrd程序将PC这张表的内容打印出来。

01

import xlrd3

02

03

def main():

04

xlsfile=xlrd3.open_workbook("D:\\Workspace\\Python\\xlrd3-test\\test.xls")

05

try:

06

mysheet= xlsfile.sheet_by_name("PC")

07

except:

08

print("no sheet in %s named PC")

09

return

10

11

# total rows and cols

12

print("%d rows, %d cols"%(mysheet.nrows, mysheet.ncols))

13

14

for rowin range(0, mysheet.nrows):

15

temp=""

16

for colin range(0, mysheet.ncols):

17

if mysheet.cell(row, col).value != None:

18

temp+=str(mysheet.cell(row, col).value)+"\t"

19

print(temp)

20

21

if __name__== '__main__':

22

main()

输出:

d

大功告成!

以上仅是一个入门介绍,关于xlrd更多的信息请参考:

来自:http://www.360doc.com/content/12/0918/22/9369336_236837182.shtml

python3怎么读取excel_python3 读取excel相关推荐

  1. python3读取excel数据-Python3读取和写入excel表格数据的示例代码

    python操作excel主要用到 xlrd 和 xlwt 这两个库,xlrd读取excel表格数据, 支持 xlsx和xls格式的excel表格 :xlwt写入excel表格数据: 一.python ...

  2. python读取excel内容和写入_Python读取和写入Excel文件

    制作Excel表 常用方法说明 Workbook类 Workbook类创建一个XlswWrite的Workbook对象,相当于创建一个excel表 And_worksheet()用来创建工作表,默认为 ...

  3. 两个使用 Pandas 读取异常数据结构 Excel 的方法,拿走不谢!

    作者 | 周萝卜 来源 | 萝卜大杂烩 通常情况下,我们使用 Pandas 来读取 Excel 数据,可以很方便的把数据转化为 DataFrame 类型.但是现实情况往往很骨干,当我们遇到结构不是特别 ...

  4. Python读取多个excel文件(删除字段、数据格式转换、dataframe多表合并)并写入ElasticSearch实战(自动创建索引、写入ElasticSearch、探索性数据分析)

    Python读取多个excel文件(删除字段.数据格式转换.dataframe多表合并)并写入ElasticSearch实战(自动创建索引.写入ElasticSearch.探索性数据分析) 目录

  5. pandas读取多个excel文件并拼接(append)起来形成最终的dataframe、与标签文件连接(join)形成最终学习数据集

    pandas读取多个excel文件并拼接(append)起来形成统一的dataframe.与标签文件(label)连接(join)形成最终学习数据集 使用到的pandas核心方法有append和joi ...

  6. Java使用POI读取和写入Excel指南

    Java使用POI读取和写入Excel指南 做项目时经常有通过程序读取Excel数据,或是创建新的Excel并写入数据的需求: 网上很多经验教程里使用的POI版本都比较老了,一些API在新版里已经废弃 ...

  7. java中mypoiexception_Java中使用POI读取大的Excel文件或者输入流时发生out of memory异常参考解决方案...

    注意:此参考解决方案只是针对xlsx格式的excel文件! 背景 前一段时间遇到一种情况,服务器经常宕机,而且没有规律性,查看GC日志发生了out of memory,是堆溢出导致的,分析了一下堆的d ...

  8. Python使用xlrd和xlwt读取和写入excel详细教程

    2019独角兽企业重金招聘Python工程师标准>>> xlrd和xlwt是python操作excel的两个库,xlrd用于读取,xlwt用于写入.xlwt无法直接操作xlrd读取的 ...

  9. Apache POI和EasyExcel 第七集:EasyExcel的基本操作,读取和写入Excel,一行足矣

    Apache POI和EasyExcel 第七集:EasyExcel的基本操作,读取和写入Excel,一行搞定 一.资源 在这里设置lombok会遇到一个问题,以前在springboot那里都没遇到, ...

最新文章

  1. Microsoft Dynamics CRM 2013升级2015(二)正式安装升级 2015及 Reporting Extensions安装
  2. innerhtml js执行_JS 中 DOM 操作
  3. 虚拟机上怎么配置mysql数据库_Linux虚拟机下安装配置MySQL
  4. 【机器学习】贝叶斯整理
  5. 一定要会的synchronized关键字的用法
  6. python字典定义方式_Python字典常用方法及汇总
  7. java编译提示错误信息_JAVA编译错误提示缺少“{”
  8. java获取网络图片_有了这50套Java毕设项目(源码 案例),offer拿到手软,无偿分享...
  9. 吃货开发 阶段01 类的定义 方法的布局 0925
  10. Linux学习笔记017---文件解压命令的使用_压缩解压
  11. jQuery easyui中combox 自定义样式 去掉下拉框的空白
  12. matlab图片渲染,图像 – 在内存中渲染MATLAB图
  13. java虚拟机时区_转:jvm设置时区问题
  14. 集群之间数据拷贝distcp性能的调优
  15. PLC/WINCC实现远程监控的方法
  16. mysql语句大全及例子_SQL语句大全实例教程.pdf
  17. wpa_supplicant
  18. 生命,因追逐梦想而精彩
  19. Android OTG U盘相关
  20. 关于抢红包的_关于抢红包的作文600

热门文章

  1. BUUCTF(pwn)[BJDCTF 2nd]secret
  2. 如何在IDA软件中找到自己需要的目标函数(关键函数)
  3. python基础教程:可变,不可变数据类型
  4. 回调函数的意义以及python实现
  5. java 命令行 读取文件_java读取txt文件
  6. Linux系统重新对时,Linux系统时区不对怎么办?
  7. ansi c标准_C/C++的起源与发展故事,我是最牛的软件编程语言,不接受反驳
  8. 进程、线程、端口、服务间关系
  9. c语言通讯录项目(电话簿)
  10. html for 循环模板