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 相关文章推荐
Python文件夹与文件的操作实现代码
Jul 13 Python
Python中捕捉详细异常信息的代码示例
Sep 18 Python
跟老齐学Python之编写类之三子类
Oct 11 Python
基于python的七种经典排序算法(推荐)
Dec 08 Python
python 文件操作删除某行的实例
Sep 04 Python
python读取xlsx的方法
Dec 25 Python
Windows平台Python编程必会模块之pywin32介绍
Oct 01 Python
在OpenCV里实现条码区域识别的方法示例
Dec 04 Python
PyQT5 实现快捷键复制表格数据的方法示例
Jun 19 Python
python小技巧——将变量保存在本地及读取
Nov 13 Python
python爬取代理ip的示例
Dec 18 Python
Python中对象的比较操作==和is区别详析
Feb 12 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
详解WordPress开发中wp_title()函数的用法
2016/01/07 PHP
php抽奖概率算法(刮刮卡,大转盘)
2020/04/17 PHP
浅谈php中curl、fsockopen的应用
2016/12/10 PHP
Laravel框架处理用户的请求操作详解
2019/12/20 PHP
利用JQuery的load函数动态加载其它页面的内容的实现代码
2010/12/14 Javascript
jquery indexOf使用方法
2013/08/19 Javascript
JavaScript如何从listbox里同时删除多个项目
2013/10/12 Javascript
jQuery实现HTML5 placeholder效果实例
2014/12/09 Javascript
jQuery Ajax调用WCF服务详细教程
2015/03/31 Javascript
jQuery实现的经典滑动门效果
2015/09/22 Javascript
详解Javascript继承的实现
2016/03/25 Javascript
谈谈target=_new和_blank的不同之处
2016/10/25 Javascript
微信小程序 引用其他js文件实现代码
2017/02/22 Javascript
详解RequireJs官方使用教程
2017/10/31 Javascript
vuejs选中当前样式active的实例
2018/08/22 Javascript
JavaScript创建对象的四种常用模式实例分析
2019/01/11 Javascript
什么时候不能在 Node.js 中使用 Lock Files
2019/06/24 Javascript
vue+layui实现select动态加载后台数据的例子
2019/09/20 Javascript
JS实现动态星空背景效果
2019/11/01 Javascript
[05:56]第十六期——新进3大C之小兔基
2014/06/24 DOTA
[03:00]DOTA2-DPC中国联赛1月18日Recap集锦
2021/03/11 DOTA
Python读取mp3中ID3信息的方法
2015/03/05 Python
Python抓取框架 Scrapy的架构
2016/08/12 Python
Python使用flask框架操作sqlite3的两种方式
2018/01/31 Python
Python 微信爬虫完整实例【单线程与多线程】
2019/07/06 Python
tensorflow实现训练变量checkpoint的保存与读取
2020/02/10 Python
如何查看python关键字
2021/01/17 Python
CSS3弹性盒模型开发笔记(一)
2016/04/26 HTML / CSS
Ralph Lauren法国官网:美国高品味时装品牌
2017/12/08 全球购物
请描述一下”is a”关系和”has a”关系
2015/02/03 面试题
培训协议书范本
2014/04/22 职场文书
环境科学专业教师求职信
2014/07/12 职场文书
解除租房协议书
2014/12/03 职场文书
爱护公物主题班会
2015/08/17 职场文书
Django如何创作一个简单的最小程序
2021/05/12 Python
深入解析Apache Hudi内核文件标记机制
2022/03/31 Servers