前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >哇塞,Python读取多个Excel文件竟然如此简单

哇塞,Python读取多个Excel文件竟然如此简单

作者头像
fanjy
发布2021-11-10 14:36:35
3.3K0
发布2021-11-10 14:36:35
举报
文章被收录于专栏:完美Excel

学习Excel技术,关注微信公众号:

excelperfect

标签:Python与Excel,pandas

本文主要讲解如何使用pandas库将多个Excel文件读入到Python。

方法1:从文件夹获取文件——PowerQuery样式

Excel Power Query具有“从文件夹获取数据”功能,允许我们加载特定文件夹中所有文件。我们可以用Python轻松地完成这项工作。工作流程如下所示:

  • 给定文件夹,查找其中的所有文件。
  • 缩小文件选择范围,我需要加载哪些文件?
  • 逐个加载选定文件中的数据。

为了实现上述工作流程,我们需要os库和pandas库。os库提供了与计算机操作系统交互的方法,例如查找文件夹中存在哪些文件。os.listdir()返回特定文件夹中所有文件名(字符串)的列表。一旦有了文件名列表,我们就可以遍历它们并将数据加载到Python中。

图1

我们的工作文件夹包含多种文件类型(Word、Excel、图像和Exe文件,还有文件夹),但是file.endswith('.xlsx')确保我们只将Excel文件读入Python。

os.path.join()提供了一种创建文件路径的有效方法,在可能的情况下,应始终使用该方法,而不是folder+”\”+file。

方法2:使用一个Excel输入文件

第二种方法要求我们有一个单独的Excel文件作为“输入文件”,它包含指向我们打算读入Python的各个文件的链接。要重复我们刚才介绍的示例,需要创建一个Excel文件,如下图2所示,基本上只有一列,其中包含指向其他文件的链接。

图2

可能你会非常喜欢这种方法,因为:

  • 可以在熟悉的环境(电子表格)中组织和存储信息(文件名、链接等)。
  • 如果我需要更新或添加要读取的新文件,只需要更新这个输入文件,无需更改编码。

该工作流与前面的方法类似。首先,我们需要让Python知道可以从这个输入文件获得的文件路径。

图3

这基本上是一个只有一列的简单数据框架,其中包含文件链接。现在我们可以遍历列表并读取Excel文件。

图4

何时使用“从文件夹获取文件”与“Excel输入文件”

在确定使用哪种方法时,我会问两个简单的问题。

1.源文件夹是否包含我不需要的额外文件?

  • 例如,如果一个文件夹包含20个csv文件,而我只需要其中10个。使用Excel输入文件方法可能更容易。编辑Excel输入文件比在Python中编写代码来处理不同的场景更简单、更快。
  • 但是,如果文件夹包含50个文件,其中20个是csv,我全部需要这些文件。此时,我将使用从文件夹获取文件的方法,因为我们可以轻松地从文件列表中选择所有.csv文件。

2.是否所有文件都位于同一文件夹中?

  • 如果文件位于不同的文件夹中,则使用Excel输入文件来存储文件路径更有意义。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2021-10-30,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 完美Excel 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
文件存储
文件存储(Cloud File Storage,CFS)为您提供安全可靠、可扩展的共享文件存储服务。文件存储可与腾讯云服务器、容器服务、批量计算等服务搭配使用,为多个计算节点提供容量和性能可弹性扩展的高性能共享存储。腾讯云文件存储的管理界面简单、易使用,可实现对现有应用的无缝集成;按实际用量付费,为您节约成本,简化 IT 运维工作。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档