python计数特定目录中的文本文件数

python计数特定目录中的文本文件数,python,Python,我试图获取某个目录中的文件数,但我希望它只计算文本文件,因为帐户和DS中有另一个目录。存储文件。我应该修改什么以只获取文本文件的数量 list = os.listdir("data/accounts/") number_files = len(list) print(number_files) 从 解决方案1。 fileCounter = 0 for root, dirs, files in os.walk("data/accounts/"): for file in files:

我试图获取某个目录中的文件数,但我希望它只计算文本文件,因为帐户和DS中有另一个目录。存储文件。我应该修改什么以只获取文本文件的数量

list = os.listdir("data/accounts/")
number_files = len(list)
print(number_files)

解决方案1。

fileCounter = 0
for root, dirs, files in os.walk("data/accounts/"):
    for file in files:    
        if file.endswith('.txt'):
            fileCounter += 1
fileCounter = len(glob.glob1("data/accounts/","*.txt"))
解决方案2。

fileCounter = 0
for root, dirs, files in os.walk("data/accounts/"):
    for file in files:    
        if file.endswith('.txt'):
            fileCounter += 1
fileCounter = len(glob.glob1("data/accounts/","*.txt"))
在这里阅读有关glob的信息

解决方案1。

fileCounter = 0
for root, dirs, files in os.walk("data/accounts/"):
    for file in files:    
        if file.endswith('.txt'):
            fileCounter += 1
fileCounter = len(glob.glob1("data/accounts/","*.txt"))
解决方案2。

fileCounter = 0
for root, dirs, files in os.walk("data/accounts/"):
    for file in files:    
        if file.endswith('.txt'):
            fileCounter += 1
fileCounter = len(glob.glob1("data/accounts/","*.txt"))

在这里阅读有关glob的内容

假设您的文本文件以“.txt”结尾,您可以使用以下内容:

files = [x for x in os.listdir("data/accounts/") if (os.isfile(x) and x.endswith('.txt'))]
number_files = len(list)
print(number_files)

使用忽略目录和
string.endswith()
来确定文本文件的大小。

假设文本文件以“.txt”结尾,您可以使用以下方法:

files = [x for x in os.listdir("data/accounts/") if (os.isfile(x) and x.endswith('.txt'))]
number_files = len(list)
print(number_files)

用于忽略目录和
string.endswith()
来确定文本文件的大小。

另一个可能适用于您的模块是

它将允许您使用通配符,这样您就可以捕获您感兴趣的文件

from glob import glob
filenames = glob("data/accounts/*.txt")
number_of_files = len(filenames)
print(number_of_files)

另一个可能适合您的模块是

它将允许您使用通配符,这样您就可以捕获您感兴趣的文件

from glob import glob
filenames = glob("data/accounts/*.txt")
number_of_files = len(filenames)
print(number_of_files)
str.endswith()
返回
True
False

True
False
的数值分别为1和0。
sum()
将使用生成器表达式

str.endswith()
返回
True
False

True
False
的数值分别为1和0。

sum()
将使用生成器表达式

这不是两个独立的解决方案吗?这不是两个独立的解决方案吗?这是最好的答案,谢谢。这是最好的答案,谢谢。