【发布时间】:2018-05-16 20:04:15
【问题描述】:
我想编写一个函数来遍历不同文件夹中的 excel 文件。每个文件的部分路径是相同的,例如:
C:\Main\Division\Reports\Year\Data.xls
每条路径中唯一改变的部分是“年”。这些文件都具有相同的名称。
有没有办法使用 Year 的占位符来做到这一点?如果不是,我应该采取什么方法?
【问题讨论】:
-
澄清一下,是否需要遍历父目录(C:\Main\Division\Reports)中的所有目录?
-
from pathlib import Path然后for p in Path(r'C:\Main\Division\Reports').glob('*/Data.xls'): do_stuff(p) -
@Sach 我想从位于每个 Year 文件夹中的 1 个文件中提取数据
-
@juanpa.arrivillaga 感谢您的回复。我收到 OSError: [WinError 123] 文件名、目录名或卷标语法不正确。 .glob 似乎引用了 Reports 目录中列出的第一个文件夹,而不是我需要的文件夹
-
@BeginnerKruman 嗯,我写得很快,并在 glob 参数中使用了 unix 语法。尝试使用 windows 语法。我真的没有 windows 盒子来试验 atm...