2

我有目录树格式的大量数据,例如:
c:/user/name/class/std/section I to VI [all section has individual folder i.e. 6 folder in total and all folder have 100+ files to be processed]
我编写了一个脚本,如果我在其中提供包含文件的文件夹,例如Section I,它将使用glob.iglob函数处理内部文件。
是否可以编写一个脚本,只需进入一个目录 > 处理文件 > 离开目录 > 进入不同的目录 > 等等,就可以遍历目录。
请帮忙。

4

3 回答 3

4

你可以试试这段代码:

import os
folder = 'C:'

for root, dirs, files in os.walk(folder):
    for name in files:
        print os.path.join(root, name)
    for name in dirs:
        print os.path.join(root, name)

更新:

导入操作系统文件夹 = 'C:'

for root, dirs, files in os.walk(folder):
    for name in files:
        nm, ext = os.path.splitext(name)
        if ext == ".csv":
            print os.path.join(root, name)
于 2012-05-16T11:45:24.893 回答
0
import os
for (dirpath, dirnames, filenames) in os.walk(directory):
    # Do some processing

这将遍历指定目录的根目录,例如。c:/user/name/class/std并输入其中包含的每个文件夹,并为您提供其中包含的文件夹和文件。有了这个,你应该能够做你需要明智地处理的事情。

于 2012-05-16T11:49:16.840 回答
0

解决 Abhisek 对 Aragon 解决方案的评论:

导入操作系统文件夹 = 'C:'

for root, dirs, files in os.walk(folder):
    for name in files:
        (base, ext) = os.path.splitext(name)
        if ext in "csv":
            print os.path.join(root, name)
于 2012-05-16T12:28:56.507 回答