使用os.walk以递归到Python中的文件夹

时间:2014-12-16 00:26:55

标签: python recursion filesystems

我将以下代码作为Python文件的一部分,它遍历名为controllers的文件夹中的.py文件,并使用它们执行某些操作。

这是我的原型,但现在我想使用os.walk递归到文件夹中。

controller_folder_path = "applications/%s/controllers/*.py" % application_name
for module_path in glob.glob(controller_folder_path):
    print module_path

任何帮助?

2 个答案:

答案 0 :(得分:2)

import os

controller_folder_path = "applications/%s/controllers" % application_name
for root, dirs, files in os.walk(controller_folder_path):
    for module_path in files:
        module_path = os.path.join(root, module_path)
        if module_path.endswith('.py'):
            print module_path

答案 1 :(得分:1)

os.walk将为指定的top目录中的每个目录和子目录返回一个3元组的迭代。

from os import walk

dirs = walk('/top/directory/here')
for path_from_top, subdirs, files in dirs:
    for f in files:
        if f.endswith('py'):
            print str(path_from_top) + '/' + str(f)