您现在的位置是:亿华云 > 数据库
手把手教你使用Openpyxl库从Excel文件中提取指定的数据并生成新的文件
亿华云2025-10-03 20:17:19【数据库】3人已围观
简介大家好,我是Python进阶者。前言前几天有个叫【Lcc】的粉丝在Python交流群里问了一道关于从Excel文件中提取指定的数据并生成新的文件的问题,初步一看确实有点难,不过还是有思路的。她的目标就
大家好,手把手教使用生成我是文文件Python进阶者。
前言
前几天有个叫【Lcc】的中据并粉丝在Python交流群里问了一道关于从Excel文件中提取指定的数据并生成新的文件的问题,初步一看确实有点难,指定不过还是手把手教使用生成有思路的。她的文文件目标就是想提取文件中A列单元格中数据为10的所有行,看到A列的中据并表头是时间,10就代表着上午的指定10小时,也就是手把手教使用生成说她需要提取每一天中的上午10点钟的数据。这个数据在做研究的文文件时候还是挺有用的,之后结合作图,中据并就可以挖掘出部分潜在规律了,指定这个在此不做深究。手把手教使用生成
一、文文件思路
这个问题看似简单,香港云服务器中据并直接用Excel中的筛选就可以了。诚然,数据筛选,之后扩展行确实可以做到,针对一个或者两个或者10位数以下的Excel文件,我们尚且可以游刃有余,但是面对成百上千个这样的数据文件,怕就力不从心了,如果还是挨个进行处理,那就难受了,所以用Python来批量处理还是很奈斯的。下面一起来看看吧!
二、解决方法
其实这个问题和转载刘早起之前的那篇文章处理思路一模一样,Python办公自动化|批量提取Excel数据,感兴趣的话,可以戳链接看看,只不过稍微有些改变,把那个判断条件改为等于就可以了,下面直接上代码。关于代码的详细解析,可以参考上面提到的文章,这里不做赘述。网站模板
# coding: utf-8 from openpyxl import load_workbook, Workbook # 数据所在的文件夹目录 path = C:/Users/pdcfi/Desktop/xiaoluo # 打开数据工作簿 workbook = load_workbook(path + / + 巍图1.xlsx) # 打开工作表 sheet = workbook.active buy_mount = sheet[A] row_lst = [] for cell in buy_mount: if isinstance(cell.value, int) and cell.value == 10: print(cell.row) row_lst.append(cell.row) new_workbook = Workbook() new_sheet = new_workbook.active # 创建和原数据 一样的表头(第一行) header = sheet[1] header_lst = [] for cell in header: header_lst.append(cell.value) new_sheet.append(header_lst) # 从旧表中根据行号提取符合条件的行,并遍历单元格获取值,以列表形式写入新表 for row in row_lst: data_lst = [] for cell in sheet[row]: data_lst.append(cell.value) new_sheet.append(data_lst) # 最后切记保存 new_workbook.save(path + / + xiaoluo_符合筛选条件的新表.xlsx)
之后在本地查看结果,可以看到,符合条件的数据全部都被提取出来了。
2)注意
还记得上图中粉丝说自己提取到的数据为啥只有header,而没有数据么?其实这里有个坑,隐藏在她的原始数据中,请看下图。
A列的数据是从B列取的,是引用,所有等到访问的时候,其实是获取不到的,所有导致我们去读取的时候,查找的cell为空,自然我们就无法提取到数据。
针对这样的亿华云情况,这里给出两个方案,其一是将A列,复制粘贴,粘贴类型为"值",然后重新保存excel进行读取就可以搞定了;其二是以B列作为索引,进行时间取值,然后创建新的一列,之后再做提取,实现难度稍微大一些,取时间的代码可以参考。
df_raw[时间] = pd.to_datetime(df_raw[时间], format=%Y-%m-%d).hour本文用的是第一种方法,其实第二种方法显得更加智能一些,难度稍微大一些,实现方法大家可以踊跃的尝试下。
三、总结
我是Python进阶者。本文基于粉丝提问如何从Excel文件中提取指定的数据并生成新的文件的问题,给出了两种解决方案。
针对这个问题,小编这里整理了两个思路,当然方法肯定远远不只是这两种!
很赞哦!(5616)
相关文章
- 七个常见数据中心迁移挑战
- 3、考虑出售域名
- 因为域名解析需要同步到DNS根服务器,而DNS根服务器会不定时刷,只有DNS根服务器刷新后域名才能正常访问,新增解析一般会在10分钟左右生效,最长不会超过24小时,修改解析时间会稍微延长。
- 在数以亿计的网站中,我们应该抓住每一个可能带来宣传的机会,域名可以带有企业的名字,一般可以使用汉语拼音或者英语单词或者是相关缩写的形式,只要用户记住了你企业的名字,就能很容易的打出你的网站域名,同样的,记住了网站域名也能很快的记住你公司的名字。
- Colossal-AI助力,摩尔线程预训练语言模型MusaBert荣登CLUE榜单TOP10
- 为什么喜欢国外注册域名?国外注册域名注意什么?
- 什么样的邮箱才是安全的电子邮件地址?
- 4、参加域名拍卖会
- 数据中心为了提高物理安全性需要提高设备互操作性
- .net 适用于从事Internet相关的网络服务的机构或公司
热门文章
站长推荐
强强联手促应用落地!摩尔线程与长城超云完成服务器产品兼容互认证
审核通过的域名将显示在域名竞拍页面,并进入正式拍卖期,买家可以在拍卖周期内出价,加价幅度与拍卖保证金说明,点此查看。
为什么说注册域名注意细节?哪些我们不能忽视?
域名资源有限,好域名更是有限,但机会随时都有,这取决于我们能否抓住机会。一般观点认为,国内域名注册太深,建议优先考虑外国注册人。外国注册人相对诚实,但价格差别很大,从几美元到几十美元不等。域名投资者应抓住机遇,尽早注册国外域名。
数据中心即服务的四大优势
前面这两个步骤都是在本机完成的。到这里还没有涉及真正的域名解析服务器,如果在本机中仍然无法完成域名的解析,就会真正请求域名服务器来解析这个域名了。
用户邮箱的静态密码可能已被钓鱼和同一密码泄露。在没有收到安全警报的情况下,用户在适当的时间内不能更改密码。在此期间,攻击者可以随意输入帐户。启用辅助身份验证后,如果攻击者无法获取移动电话动态密码,他将无法进行身份验证。这样,除非用户的电子邮件密码和手机同时被盗,否则攻击者很难破解用户的邮箱。
公司在注册域名时还需要确保邮箱的安全性。如果邮箱不安全,它只会受到攻击。攻击者可以直接在邮箱中重置密码并攻击用户。因此,有必要注意邮箱的安全性。