在python中搜索具有相同文件名的所有文件的最有效方法

问题描述 投票:0回答:1

我想在文件夹中找到所有具有相同名称的文件的扩展名。因此,例如,如果一个目录包含2个名为test.csv和test.txt的文件。我想让程序返回包含“ .txt”和“ .csv”的列表。

我用过:

glob.glob(file_name + '*') 

起作用,但是当文件夹包含许多文件时,速度很慢(0.03秒)。在python中有一些更快的方法吗?

python glob file-search
1个回答
0
投票

您可以使用字典,其文件名作为键,扩展名作为值,如下所示:

import os
data = {}
for file in os.listdir():
    name, ext = file.split('.')
    if name not in data.keys():
        data[name ] = list()

    temp = data[name].copy()
    temp.append(ext)
    data[name] = temp

print(data)
© www.soinside.com 2019 - 2024. All rights reserved.