我有一个包含两个Excel文件(文件扩展名为.xls)的文件夹。我正在尝试按照以下代码从文件夹中仅过滤出xls文件
filtered_files = glob.glob(folder_path + "/*.xls")
以下是文件夹的详细信息
folder_path
是文件夹的路径。此文件夹包含2个xls文件(file1.xls
和file2.xls
)
但是,当我打印filtered_files
时,它仅返回一个文件(file2.xls),因为这是添加到文件夹中的最后一个文件,而当我再次运行脚本时,它将检测到第二个文件。
答案 0 :(得分:0)
我通常使用这样的东西:
xls_files = [os.path.join(folder_path,x) for x in os.listdir(folder_path) if x.split('.')[-1] == "xls"]
答案 1 :(得分:0)
我倾向于将glob用于此类事情。我怀疑您犯的错误是加入路径。以下代码显示了如何正确连接文件/文件夹路径。
import glob
import os
folder_path = "C:\\Users\\Me\\Documents"
filter_path = os.path.join(folder_path, "*.xls")
filtered_files = glob.glob(filter_path)
print(filtered_files)