python 利用openpyxl读取Excel表格中指定的行或列教程


Posted in Python onFebruary 06, 2021

Worksheet 对象的 rows 属性和 columns 属性得到的是一 Generator 对象,不能用中括号取索引。

python 利用openpyxl读取Excel表格中指定的行或列教程

可先用列表推导式生成包含每一列中所有单元格的元组的列表,在对列表取索引。

python 利用openpyxl读取Excel表格中指定的行或列教程

Worksheet 的 rows 属性亦可用相同的方法处理。

python 利用openpyxl读取Excel表格中指定的行或列教程

补充:python之表格数据读取

python 操作excel主要用到xlrd,xlwt这两个库,xlrd,是读取excel表,xlwt是写入表格

1.打开表格

table = xlrd.open("path_to_your_excel", 'rb')

一般时候需要进行判断,防止表格打开错误

try:
  table = xlrd.open("path_to_your_excel", 'rb')
except Exception, e
  print str(e)

当表格打开错误时,可以捕获异常

2.一个表格中可以包含多个工作簿

那么需要用到哪个工作簿

python 提供了三种获取方式

sheet1 = table.sheet()[1] or
sheet1 = table.sheet_by_index() or
sheet1 =table.sheet_by_name("sheetname")

3.上一步我们已经获取到具体的sheet(工作簿)

那么根据需求,python提供了获取表格行数列数的方法

获取行数:nrows = sheet.nrows

获取列数:ncols = sheet.cols

返回值type为int

获取列数或行数可能是为了后续需要进行遍历内部的数据而用,那么下面来说python提供可以获取某一行或者某一列值的方法

4.获取某行某列的值

获取某一行的值:

nrow_value = sheet.row_values(number)

获取某一列的值:

ncol_value = sheet.col_values(number)

#上面row_values(number)中的表示想要获取哪一行的索引值,比如获取第一行的值,就是row_values(0)

返回值的type为list

整行整列的数据获取,python给出了直接的方法,那么获取整张表数据呢,就需要用到for循环进行遍历每一个单元格

5.获取整个表格中 的数据:

data_list = []
title = sheet.row_values(0)
for i in range(1, sheet.nrows):       
  data_values = OrderedDict()
  row_value = sheet.row_values(i)
#从第二行开始遍历,根据行数获得每行的数据list
for j in range(0, len(row_value)):    
  data_values[title[j]] = row_value[j]
print ([title[j]], row_value[j])data_list.append(data_values)
# result = json.dumps(data_list)
#需要转化成为json格式
return data_list

以上为个人经验,希望能给大家一个参考,也希望大家多多支持三水点靠木。如有错误或未考虑完全的地方,望不吝赐教。

Python 相关文章推荐
linux系统使用python获取内存使用信息脚本分享
Jan 15 Python
Python连接mysql数据库的正确姿势
Feb 03 Python
微信跳一跳python辅助软件思路及图像识别源码解析
Jan 04 Python
Python实现屏幕截图的两种方式
Feb 05 Python
Python批量修改图片分辨率的实例代码
Jul 04 Python
python数值基础知识浅析
Nov 19 Python
Python迭代器模块itertools使用原理解析
Dec 11 Python
python 消费 kafka 数据教程
Dec 21 Python
Python +Selenium解决图片验证码登录或注册问题(推荐)
Feb 09 Python
浅谈Pycharm最有必要改的几个默认设置项
Feb 14 Python
Python collections.deque双边队列原理详解
Oct 05 Python
Python基于argparse与ConfigParser库进行入参解析与ini parser
Feb 02 Python
python 利用matplotlib在3D空间中绘制平面的案例
Feb 06 #Python
PyQt5通过信号实现MVC的示例
Feb 06 #Python
python 利用matplotlib在3D空间绘制二次抛物面的案例
Feb 06 #Python
python 利用panda 实现列联表(交叉表)
Feb 06 #Python
jupyter 添加不同内核的操作
Feb 06 #Python
解决import tensorflow导致jupyter内核死亡的问题
Feb 06 #Python
PyCharm常用配置和常用插件(小结)
Feb 06 #Python
You might like
使用php重新实现PHP脚本引擎内置函数
2007/03/06 PHP
一个基于PDO的数据库操作类
2011/03/24 PHP
PHP生成不同颜色、不同大小的tag标签函数
2013/09/23 PHP
PHP常用技巧汇总
2016/03/04 PHP
PHP XML和数组互相转换详解
2016/10/26 PHP
用JavaScript脚本实现Web页面信息交互
2006/10/11 Javascript
学习js在线html(富文本,所见即所得)编辑器
2012/12/18 Javascript
JavaScript对Json的增删改属性详解
2016/06/02 Javascript
jQuery Easyui Datagrid实现单行的上移下移及保存移动的结果
2016/08/15 Javascript
JavaScript中ES6字符串扩展方法
2016/08/26 Javascript
基于vue2.0+vuex+localStorage开发的本地记事本示例
2017/02/28 Javascript
ES6 javascript的异步操作实例详解
2017/10/30 Javascript
vue-cli3 项目优化之通过 node 自动生成组件模板 generate View、Component
2019/04/30 Javascript
vue ajax 拦截原理与实现方法示例
2019/11/29 Javascript
JS三级联动代码格式实例详解
2019/12/30 Javascript
node+vue实现文件上传功能
2020/05/28 Javascript
vue 实现超长文本截取,悬浮框提示
2020/07/29 Javascript
浅谈vue-props的default写不写有什么区别
2020/08/09 Javascript
[02:08]我的刀塔不可能这么可爱 胡晓桃_1
2014/06/20 DOTA
python操作CouchDB的方法
2014/10/08 Python
使用Python的Tornado框架实现一个简单的WebQQ机器人
2015/04/24 Python
python操作mongodb根据_id查询数据的实现方法
2015/05/20 Python
python图像处理之镜像实现方法
2015/05/30 Python
python实现根据主机名字获得所有ip地址的方法
2015/06/28 Python
用Python的Flask框架结合MySQL写一个内存监控程序
2015/11/07 Python
pandas数据框,统计某列数据对应的个数方法
2018/04/11 Python
Python实现定时自动关闭的tkinter窗口方法
2019/02/16 Python
如何基于Python获取图片的物理尺寸
2019/11/25 Python
Python直接赋值及深浅拷贝原理详解
2020/09/05 Python
美国现代家具和家居商店:Apt2B
2016/08/29 全球购物
Sisley法国希思黎美国官方网站:享誉全球的奢华植物美容品牌
2020/06/27 全球购物
前处理班长职位说明书
2014/03/01 职场文书
人力资源管理毕业求职信
2014/08/05 职场文书
2014年小学辅导员工作总结
2014/12/23 职场文书
新员工入职感言范文!
2019/07/04 职场文书
Mysql数据库事务的脏读幻读及不可重复读详解
2022/05/30 MySQL