Python处理Excel数据,有两种思路,

  • 一是通过相应的execl库进行操作,优点是最大限度保留了excel的特性,缺点是速度慢

  • 另一种是以数据的思维,通过Pandas等库进行数据处理,速度快,缺点是损失execl特性

需求:

读取一批excel表格文件,过滤出第三列数据符合某一条件的数据

方法1:利用 openpyxl库处理,思路是删除不符合需要的行

import openpyxl
​
select_list = [
"XXX",
"YYY"
]
​
#打开表格的第一个表单
wb = openpyxl.load_workbook("file_name.xlsx")
sheet = wb.worksheets[0]
​
#遍历行,删除不符合条件的行
for row in sheet.rows:for cell in row:if cell.column ==3 and (cell.value not in select_list):print(cell.coordinate, cell.value,cell.column,cell.row)sheet.delete_rows(cell.row)break
wb.save("new_file_name.xlsx")

经过测试,此方法速度很慢,适用数据不多的情况

方法2: 利用pandas进行处理,转存成csv格式

import csv
​
import openpyxl
import pandas as pd
​
select_list = ["AAA","BBB"
]
​
datas = []
#pd打开,注意指定引擎
df = pd.read_excel("file_name.xlsx", engine ="openpyxl")
​
# 获取行号的索引,并对其进行遍历:
for i in df.index.values: if df.loc[i].values[2] in select_list:print(df.loc[i].values)datas.append(df.loc[i].values.tolist())
​
#遍历写入结果文件
with open("new_file_name.csv", 'w', newline='') as csvfile:writer = csv.writer(csvfile)for row in datas:writer.writerow(row)

此方法速度快很多,但是结果格式需要一定微调

Python筛选处理Excel的两种方法(openpyxl与pandas)相关推荐

  1. python文字教程-Python在图片中添加文字的两种方法

    本文主要介绍的是利用Python在图片中添加文字的两种方法,下面分享处理供大家参考学习,下来要看看吧 一.使用OpenCV 在图片中添加文字看上去很简单,但是如果是利用OpenCV来做却很麻烦.Ope ...

  2. python自带的shell是什么-python中执行shell的两种方法总结

    一.使用python内置commands模块执行shell commands对Python的os.popen()进行了封装,使用SHELL命令字符串作为其参数,返回命令的结果数据以及命令执行的状态: ...

  3. python怎么模拟浏览器交互_干货分享:python爬虫模拟浏览器的两种方法实例分析(赶紧收藏)...

    今天为大家带来的内容是:干货分享:python爬虫模拟浏览器的两种方法实例分析(赶紧收藏) 文章主要介绍了python爬虫模拟浏览器的两种方法,结合实例形式分析了Python爬虫模拟浏览器的两种常见操 ...

  4. 站长在线Python精讲:在Python中格式化字符串的两种方法详解

    欢迎你来到站长在线的站长学堂学习Python知识,本文学习的是<在Python中格式化字符串的两种方法详解>.本知识点主要内容有:使用%操作符格式化字符串和使用format()方法格式化字 ...

  5. python 手动安装包的两种方法

    python 手动安装包的两种方法 对于 .tar.gz 的包来说 解压缩文件 aaaxxxx-1.0.1.tar.gz 移动到压缩文件所在目录 使用tar -zxvf aaaxxxx-1.0.1.t ...

  6. python 获取csv的列数_Python读取excel的两种方法

    excel是什么 Microsoft Excel是一个使用非常广泛的电子表格程序.它的用户友好性和吸引人的功能使其成为数据科学中常用的工具.对于excel来说,整个excel文件称为工作簿,工作簿中的 ...

  7. bufferedreader读取中文乱码_Python读取excel的两种方法

    excel是什么 Microsoft Excel是一个使用非常广泛的电子表格程序.它的用户友好性和吸引人的功能使其成为数据科学中常用的工具.对于excel来说,整个excel文件称为工作簿,工作簿中的 ...

  8. python list列表排序的两种方法及实例讲解

    对List进行排序,Python提供了两个方法 方法1.用List的内建函数list.sort进行排序 list.sort(func=None, key=None, reverse=False) Py ...

  9. python 修改文件创建时间_python 两种方法修改文件的创建时间、修改时间、访问时间...

    突如其来想知道一下 python 如何修改文件的属性(创建.修改.访问时间),于是就去网上搜集了可行方案,也就有了这篇博客 方案一 from win32file import CreateFile, ...

最新文章

  1. java_环境安装(window10)
  2. 13 个应该记住的最不寻常的搜索引擎
  3. 求最大公约数c语言代码_辗转相除求最大公约数原理
  4. 【elasticsearch】Elasticsearch 空值处理实战
  5. 这个寒假要大更新了!
  6. Scala学习03——基础语法
  7. Angular实践----前言与概览
  8. cgroup学习(三)——伪文件
  9. 实训报告万能模板计算机专业,计算机实训报告模板
  10. 基于分析Laplace方程“放射状”函数特解的基本解引入
  11. Linux文件系统(一)——常用文件系统
  12. 台式电脑计算机怎么用,怎么用键盘开机电脑_台式电脑键盘怎么开机-win7之家
  13. Go语言开发工具 LiteIDE X27 发布
  14. R SMOTE 报错 length of 'dimnames' [2] not equal to array extent
  15. 先秦的孔子集团有没有可能是类似黑帮性质,有文有武,纪律分明,所以秦王坑儒只是为打黑?
  16. 48V输入智能磁吸灯-欧创芯OC5266 60V 1.5A 高恒流精度LED 恒流驱动器
  17. `module:TextUtils': invalid multibyte character (ArgumentError) in TMail/Utils
  18. 专业后期华丽调色效果Lr预设
  19. 学生成绩查询web系统—功能概述
  20. 前端自动化测试框架 Jest 极简教程

热门文章

  1. 使用Arduino进行磁场强度测量
  2. 【无标题】证明结合律
  3. laravel安装Debugbar调试器的安装和使用
  4. barryvdh/laravel-debugbar 安装后未显示
  5. 一键配网、联网点阵时钟、继电器的基本应用 | Mixly纯干货课程
  6. 游戏 2048 的最佳算法是什么?
  7. C语言 有限状态机
  8. 网站程序有漏洞用waf可以防护吗?如何防护?
  9. 通俗讲解LORA中的跳频和扩频 (转)
  10. python表白,用Love组成一朵玫瑰花