如何计算特定目录中的文件数,而不扫描python中的子文件夹

2024-10-03 06:20:38 发布

您现在位置:Python中文网/ 问答频道 /正文

我试着像

 files = os.listdir(file_path)
    print(len(files)) <--gets counts of all files in subdirctory too
 for f in files:
  if (f.endswith('.xlsx')):
    print(count of *.clxs files)

我只需要根目录中的excel文件目录。怎么做在python中这样做?你知道吗


Tags: ofpathinforlenosfilesall
3条回答

fileCounts的第一个元素是根文件的计数,其他元素是子目录的计数:

import os
fileCounts=[]
for root,dirs,files in os.walk(file_path,topdown=True):
  xlsxFiles=[]
  for f in files:
    if f.endswith(".xlsx"):
      xlsxFiles.append(f)
  fileCounts.append(len(xlsxFiles))
print(fileCounts[0])

如果您使用的是Python>;=3.4版本,那么可以使用pathlib

base_path = pathlib.Path(file_path)
num_spreadsheets = len(list(base_path.glob('*.xlsx')))

你能做到的

xslx_files=[]
files = os.listdir(file_path)
    print(len(files)) <--gets counts of all files in subdirctory too
 for f in files:
  if (f.endswith('.xlsx')):
    xslx_files.append(f)
print(len(xslx_files))

相关问题 更多 >