Python如何循环遍历文件夹和文件,并将它们索引到数组中

2024-09-28 23:26:16 发布

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

我有一堆文件夹,每个文件夹包含一组相同数量的文件。我希望使用python遍历每个文件夹并对每个文件进行一些分析。我想将分析结果存储在numpy数组中。在

例如,假设我们有3个文件夹,每个文件夹包含5个文件。我希望分析结果存储在一个数组results=np.zeros((3,5))

这里有一个代码片段与我想要的很接近,但是不正确。在

results=np.zeros((3,5))
dircount=0
filecount=0
for root, dirs, files in os.walk(ROOTFOLDER):
  for dir in root:
    for file in dirs:
      result[dircount,filecount]=#do some analysis with file
      filecount=filecount+1
    dircount=dircount+1
    filecount=0
print result

我必须承认,我不完全明白怎么回事手术室步行很有用,但对于涉及文件和文件夹循环的作业来说似乎很好。在


Tags: 文件in文件夹for数量npzerosroot
2条回答

您可以在这里使用os.walk

results=np.zeros((3,5))
dircount=0
for root, dirs, files in os.walk(ROOTFOLDER):
    filecount = 0
    for f in files:
        #  absolute path is os.path.join(root,f)
        result[dircount,filecount]
        filecount += 1
    dircount += 1       

打印结果

如果您需要文件夹中的完整文件列表

^{pr2}$

os.walk()执行手动执行的大部分操作:

results=np.zeros((3,5))
dircount=0
for root, dirs, files in os.walk(ROOTFOLDER):
    filecount = 0
    for f in files:
        #  absolute filename is os.path.join(root, f)
        result[dircount,filecount] = #do some analysis with file
        filecount += 1
    dircount += 1       
print result

主循环将递归地遍历dirs中的所有文件夹,从而获得该文件夹树中的所有文件。在

相关问题 更多 >