递归打印文件夹及其子文件夹的路径名



我试图打印每个文件及其子文件夹在文件夹中的路径名
这是我到目前为止的代码:

def traverse(path, d):
    for item in os.listdir(path):
        item = os.path.join(path, d)
        try:
            traverse(path,d)
        except:
            print(path)

你要找os.walk。

你可以这样使用:

def traverse(path):
    for root, dirs, files in os.walk(path):
        print(root)
        # if you want files too: 
        for f in files: 
            print(os.path.join(root, f))

我不知道这句话的目的是什么:

item = os.path.join(path, d)

我按照我的理解写代码:

#!/usr/bin/env python
# -*- coding: utf-8 -*-
import os
def traverse(path):
    for item in os.listdir(path):
        newpath = os.path.join(path, item)
        if os.path.isdir(newpath):
            traverse(newpath)
        else:
            print newpath
if __name__ == '__main__':
    traverse('.')

最新更新