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

 更新时间:2016年12月16日 10:11:31   投稿:daisy  
python处理Excel常用到的模块是xlrd。使用xlrd可以非常方便的处理Excel文档,下面这篇文章将给大家详细介绍python中包xlrd的安装与利用xlrd处理Excel表格的方法,有需要的朋友们可以参考学习,下面来一起看看吧。

一、安装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设置值及NaN值处理方法

    python设置值及NaN值处理方法

    今天小编就为大家分享一篇python设置值及NaN值处理方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-07-07
  • python代码实现AVL树和红黑树

    python代码实现AVL树和红黑树

    专注于Python数据结构,想要深入了解AVL树和红黑树的读者们,你们的机会来了!在这篇指南中,我们将带你探索这两种神奇树结构的奥秘,紧张刺激的实战代码演示,让你一窥这两种树的独特魅力,准备好了吗?让我们一起踏上这场Python树结构之旅!
    2023-12-12
  • Pytorch实现全连接层的操作

    Pytorch实现全连接层的操作

    这篇文章主要介绍了pytorch实现简单全连接层的操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2021-05-05
  • 基于OpenCV实现动态画矩形和多边形并保存坐标

    基于OpenCV实现动态画矩形和多边形并保存坐标

    这篇文章主要为大家详细介绍了如何利用OpenCV实现动态画矩形和多边形并保存坐标,文中的示例代码讲解详细,具有一定的参考价值,需要的可以参考一下
    2023-03-03
  • python 实现PIL模块在图片画线写字

    python 实现PIL模块在图片画线写字

    这篇文章主要介绍了python 实现PIL模块在图片画线写字,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-05-05
  • Python爬虫:url中带字典列表参数的编码转换方法

    Python爬虫:url中带字典列表参数的编码转换方法

    今天小编就为大家分享一篇Python爬虫:url中带字典列表参数的编码转换方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-08-08
  • python使用xmlrpclib模块实现对百度google的ping功能

    python使用xmlrpclib模块实现对百度google的ping功能

    这篇文章主要介绍了python使用xmlrpclib模块实现对百度google的ping功能,实例分析了xmlrpclib模块的相关技巧,需要的朋友可以参考下
    2015-06-06
  • Python3 replace()函数使用方法

    Python3 replace()函数使用方法

    这篇文章主要介绍了Python3 replace()函数使用方法,需要的朋友可以参考下
    2018-03-03
  • 如何解决Python读取图片路径存在转义字符的问题

    如何解决Python读取图片路径存在转义字符的问题

    这篇文章主要为大家详细介绍了如何解决Python读取图片路径时存在转义字符的问题,文中的示例代码讲解详细,感兴趣的小伙伴可以学习一下
    2023-07-07
  • 用Python进行栅格数据的分区统计和批量提取

    用Python进行栅格数据的分区统计和批量提取

    该教程其实源于web,我看到之后觉得很实用,于是自己又重复做了一遍,写了详细的注释分享给大家,希望对大家的研究有帮助,本文讲述了栅格的分区统计,批量提取,深化理解遍历循环等内容
    2021-05-05

最新评论