首页 > 后端开发 > Python教程 > 如何使用 os.walk() 在 Python 中创建可视化结构化目录树?

如何使用 os.walk() 在 Python 中创建可视化结构化目录树?

Patricia Arquette
发布: 2024-11-08 22:06:02
原创
748 人浏览过

How can I use os.walk() to create a visually structured directory tree in Python?

在 Python 中使用 os.walk() 进行递归目录遍历

递归地导航目录并列出其内容是 Python 编程中的常见任务。 os.walk() 函数提供了一种高效的方法来实现这一目标。

原始代码

以下代码演示了如何使用 os.walk() 进行导航从根目录到所有子目录并打印其内容:

#!/usr/bin/python

import os
import fnmatch

for root, dir, files in os.walk("."):
        print(root)
        print("")
        for items in fnmatch.filter(files, "*"):
                print("..." + items)
        print("")
登录后复制

这段代码有效地列出了当前目录及其子目录的内容,但它不区分目录和文件。

所需的输出

但是,所需的输出需要将目录显示为子文件夹,将文件显示为这些文件夹中的项目:

A
---a.txt
---b.txt
---B
------c.out
登录后复制

修订的代码

为了达到预期的输出,以下修改后的代码使用 os.path.basename() 来获取目录路径:

#!/usr/bin/python

import os

# traverse root directory, and list directories as dirs and files as files
for root, dirs, files in os.walk("."):
    path = root.split(os.sep)
    print((len(path) - 1) * '---', os.path.basename(root))
    for file in files:
        print(len(path) * '---', file)
登录后复制

此代码首先使用 os.sep 将路径分割为确定目录级别。然后,它打印目录名称,并带有与其深度相对应的多个破折号,后面是该目录中的文件列表,每个级别都有一个附加破折号。

以上是如何使用 os.walk() 在 Python 中创建可视化结构化目录树?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板