python读取excel(xlrd)
一、安装xlrd模块:
1、mac下打开终端输入命令:
pip install xlrd
2、验证安装是否成功:
- 在mac终端输入 python 进入python环境
- 然后输入 import xlrd
不报错说明模块安装成功
二、常用方法:
1、导入模块:
import xlrd
2、打开文件:
x1 = xlrd.open_workbook("data.xlsx")
3、获取sheet:
- 获取所有sheet名字:x1.sheet_names()
- 获取sheet数量:x1.nsheets
- 获取所有sheet对象:x1.sheets()
- 通过sheet名查找:x1.sheet_by_name("test”)
- 通过索引查找:x1.sheet_by_index(3)
# -*- coding:utf-8 -*-import xlrd import osfilename = "demo.xlsx" filePath = os.path.join(os.getcwd(), filename)print filePath# 1、打开文件 x1 = xlrd.open_workbook(filePath)# 2、获取sheet对象 print 'sheet_names:', x1.sheet_names() # 获取所有sheet名字 print 'sheet_number:', x1.nsheets # 获取sheet数量 print 'sheet_object:', x1.sheets() # 获取所有sheet对象 print 'By_name:', x1.sheet_by_name("test") # 通过sheet名查找 print 'By_index:', x1.sheet_by_index(3) # 通过索引查找
输出:
sheet_names: [u' plan', u'team building', u'modile', u'test'] sheet_number: 4 sheet_object: [<xlrd.sheet.Sheet object at 0x10244c190>, <xlrd.sheet.Sheet object at 0x10244c150>, <xlrd.sheet.Sheet object at 0x10244c110>, <xlrd.sheet.Sheet object at 0x10244c290>] By_name: <xlrd.sheet.Sheet object at 0x10244c290> By_index: <xlrd.sheet.Sheet object at 0x10244c290>
4、获取sheet的汇总数据:
- 获取sheet名:sheet1.name
- 获取总行数:sheet1.nrows
- 获取总列数:sheet1.ncols
# -*- coding:utf-8 -*-import xlrd import os from datetime import date,datetimefilename = "demo.xlsx" filePath = os.path.join(os.getcwd(), filename) print filePath# 打开文件 x1 = xlrd.open_workbook(filePath)# 获取sheet的汇总数据 sheet1 = x1.sheet_by_name("plan") print "sheet name:", sheet1.name # get sheet name print "row num:", sheet1.nrows # get sheet all rows number print "col num:", sheet1.ncols # get sheet all columns number
输出:
sheet name: plan row num: 31 col num: 11
- sheet1.row_values(0) # 获取第一行所有内容,合并单元格,首行显示值,其它为空。
- sheet1.row(0) # 获取单元格值类型和内容
- sheet1.row_types(0) # 获取单元格数据类型
# -*- coding:utf-8 -*-import xlrd import os from datetime import date,datetimefilename = "demo.xlsx" filePath = os.path.join(os.getcwd(), filename)x1 = xlrd.open_workbook(filePath) sheet1 = x1.sheet_by_name("plan")# 单元格批量读取 print sheet1.row_values(0) # 获取第一行所有内容,合并单元格,首行显示值,其它为空。 print sheet1.row(0) # 获取单元格值类型和内容 print sheet1.row_types(0) # 获取单元格数据类型
输出:
[u'learning plan', u'', u'', u'', u'', u'', u'', u'', 123.0, 42916.0, 0] [text:u'learning plan', empty:u'', empty:u'', empty:u'', empty:u'', empty:u'', empty:u'', empty:u'', number:123.0, xldate:42916.0, bool:0] array('B', [1, 0, 0, 0, 0, 0, 0, 0, 2, 3, 4])
b) 表操作
- sheet1.row_values(0, 6, 10) # 取第1行,第6~10列(不含第10表)
- sheet1.col_values(0, 0, 5) # 取第1列,第0~5行(不含第5行)
- sheet1.row_slice(2, 0, 2) # 获取单元格值类型和内容
- sheet1.row_types(1, 0, 2) # 获取单元格数据类型
# -*- coding:utf-8 -*-import xlrd import os from datetime import date,datetimefilename = "demo.xlsx" filePath = os.path.join(os.getcwd(), filename)print filePath# 1、打开文件 x1 = xlrd.open_workbook(filePath) sheet1 = x1.sheet_by_name("plan")# 列操作 print sheet1.row_values(0, 6, 10) # 取第1行,第6~10列(不含第10表) print sheet1.col_values(0, 0, 5) # 取第1列,第0~5行(不含第5行) print sheet1.row_slice(2, 0, 2) # 获取单元格值类型和内容,同sheet1.row(0) print sheet1.row_types(1, 0, 2) # 获取单元格数据类型
输出:
[u'', u'', 123.0, 42916.0] [u'learning plan', u'\u7f16\u53f7', 1.0, 2.0, 3.0] [number:1.0, text:u'\u7ba1\u7406\u5b66\u4e60'] array('B', [1, 1])
- sheet1.cell_value(1, 2)
- sheet1.cell(1, 2).value
- sheet1.row(1)[2].value
- sheet1.cell(1, 2).ctype
- sheet1.cell_type(1, 2)
- sheet1.row(1)[2].ctype
# -*- coding:utf-8 -*-import xlrd import os from datetime import date,datetimefilename = "demo.xlsx" filePath = os.path.join(os.getcwd(), filename)x1 = xlrd.open_workbook(filePath) sheet1 = x1.sheet_by_name("plan")# 特定单元格读取 # 取值 print sheet1.cell_value(1, 2) print sheet1.cell(1, 2).value print sheet1.row(1)[2].value#取类型 print sheet1.cell(1, 2).ctype print sheet1.cell_type(1, 2) print sheet1.row(1)[2].ctype
- xlrd.cellname(0, 0) # (0,0)转换成A1
- xlrd.cellnameabs(0, 0) # (0,0)转换成$A$1
- xlrd.colname(30) # 把列由数字转换为字母表示
# -*- coding:utf-8 -*-import xlrd import osfilename = "demo.xlsx" filePath = os.path.join(os.getcwd(), filename)# 打开文件 x1 = xlrd.open_workbook(filePath) sheet1 = x1.sheet_by_name("plan")# (0,0)转换成A1 print xlrd.cellname(0, 0) # (0,0)转换成A1 print xlrd.cellnameabs(0, 0) # (0,0)转换成$A$1 print xlrd.colname(30) # 把列由数字转换为字母表示
输出:
A1 $A$1 AE
- 空:0
- 字符串:1
- 数字:2
- 日期:3
- 布尔:4
- error:5
python读取excel(xlrd)相关推荐
- python读取excel一列-python读取excel(xlrd)
一.安装xlrd模块: 1.mac下打开终端输入命令: pip install xlrd 2.验证安装是否成功: 在mac终端输入 python 进入python环境 然后输入 import xlrd ...
- python读取Excel文件是报(xlrd.biffh.XLRDError: Unsupported format, or corrupt file: Expected BOF record; fo
python读取Excel文件是报(xlrd.biffh.XLRDError: Unsupported format, or corrupt file: Expected BOF record; fo ...
- python读取excel写入数据库_python实现读取excel写入mysql的小工具详解
Python是数据分析的强大利器 利用Python做数据分析,第一步就是学习如何读取日常工作中产生各种excel报表并存入数据中,方便后续数据处理. 这里向大家分享python如何读取excel,并使 ...
- Python读excel——xlrd
Python读excel--xlrd Python读取Excel表格,相比xlwt来说,xlrd提供的接口比较多,但过程也有几个比较麻烦的问题,比如读取日期.读合并单元格内容. 下面先看看基本的操作: ...
- python读取excel日期内容读出来是数字-Python读取Excel,日期列读出来是数字的处理...
Python读取Excel,里面如果是日期,直接读出来是float类型,无法直接使用. 通过判断读取表格的数据类型ctype,进一步处理. 返回的单元格内容的类型有5种: ctype: 0 empty ...
- python读取excel表格-python读写Excel表格的实例代码(简单实用)
安装两个库:pip install xlrd.pip install xlwt 1.python读excel--xlrd 2.python写excel--xlwt 1.读excel数据,包括日期等数据 ...
- python读取excelsheet-一文看懂用Python读取Excel数据
原标题:一文看懂用Python读取Excel数据 导读:现有的Excel分为两种格式:xls(Excel 97-2003)和xlsx(Excel 2007及以上). Python处理Excel文件主要 ...
- python读取excel某一列内容-Python读取Excel数据并根据列名取值
一直想将自己接触到的东西梳理一遍,可就是迈不出第一步,希望从这篇总结开始不要再做行动的矮人了. 最近测试过程中需要用到python读取excel用例数据,于是去了解和学习了下xlrd库,这里只记录使用 ...
- python读取excel表格-python读取excel表格中的数据
使用python语言实现Excel 表格中的数据读取,需要用到xlrd.py模块,实现程序如下: import xlrd #导入xlrd模块 class ExcelData(): def __init ...
- python画柱状图和折线图-Python读取Excel表格,并同时画折线图和柱状图的方法
今日给大家分享一个Python读取Excel表格,同时采用表格中的数值画图柱状图和折线图,这里只需要几行代码便可以实. 首先我们需要安装一个Excel操作的库xlrd,这个很简单,在安装Python后 ...
最新文章
- sql server 怎么实现mysql中group_concat,列转行,列用分隔符拼接字符串
- mysql构架,索引,视图,查询语句
- 会计的思考(20):还原会计报表的企业个性之四(持续经营)
- MOS管好坏的判别方法
- 720不能建立远程计算机连接,有高手知道错误720:不能建立到远程计算机的连接这个问题怎么解决? 爱问知识人...
- CONFIGURE RETENTION POLICY
- python sys.argv[]用法
- [JavaWeb-MySQL]多表查询练习
- Java的FTP协议级客户端实现详解
- spark的数三角形算法_Spark任务调度概述
- Qt4_Hello world
- 无聊时对连分数的思考
- html简单网页代码 案例_HTML+CSS静态网页练习案例(转动的八卦图)
- 计算机耗材设备管理系统,云南省审计厅计算机耗材管理系统分析与设计
- 批量/去掉office 2010 Word中标题前的黑点
- 【操作系统】第十一章-多媒体操作系统
- 【黑马程序员】vue学习笔记(未完)
- Flurry使用初级教程
- hdu 4190 Distributing Ballot Boxes
- 基于gpg的fwknop配置流程
热门文章
- Atitit 知识点 文章 框架 结构 attilax总结.docx
- Atitit 技术管理项目管理的职责列表attilax总结 v2 r74 brch4com.docx
- atitit.atiHtmlUi web组件化方案与规范v1
- atitit.商业版 源码保护 与 java本地原生代码转换 的方案总结
- paip.云计算以及分布式计算的区别
- paip.c++ qt 图片处理 检测损坏的图片
- paip.svn使用小结
- paip.使用泛型时未能找到类型或命名空间名称“T
- 硬盘分区后的逻辑结构
- (转载)lib 和 dll 的区别、生成以及使用详解