关于python:如何在目录中找到具有特定后缀的文件数?

How would one find the number of files with a particular suffix in a directory?

本问题已经有最佳答案,请猛点这里访问。

我需要搜索一个目录并显示文本文件的数量。在研究中,我相当确定我可以使用glob和os,但在如何开始方面我有点茫然。


您可以使用os.listdir

1
2
3
4
5
import os
txtFiles = 0
for file in os.listdir("/dir"):
    if file.endswith(".txt"):
        txtFiles +=1

希望这有帮助,


我会尝试这样的方法:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
import glob
import os

def fileCount():
    myFiles = dict()
    directory ="C:\somefolder\someotherfolder"

    for file in glob.glob("*"):
        if os.path.isfile(file):
            name, extension = os.path.splitext(file)
            myFiles[extension] = myFiles.get(extension, 0) + 1
            print(os.getcwd())
            os.chdir(directory)
            print('after chdir', os.getcwd())

    return myFiles

if __name__ =="__main__":
    files = fileCount()
    print(files)

for file in glob.glob("*"):将读取指定目录中的所有文件。行name, extension = os.path.splitext(file)将把文件名和扩展名拆分为两个对象,但前提是对象是文件(而不是另一个文件夹)。

希望这有帮助