📜  python 仅列出目录 - Python (1)

📅  最后修改于: 2023-12-03 15:34:09.814000             🧑  作者: Mango

Python - 仅列出目录

在Python中,我们可以使用os模块来列出目录中的所有文件和子目录。但是,有时我们只需要列出目录,而不需要列出目录中的所有文件。

方法1:使用os.walk()

os.walk() 函数可以用来递归遍历目录树。我们可以使用 os.walk() 函数列出目录树中的所有目录,并且跳过目录中的文件。

import os

def get_directories(path):
    dirs = []
    for dirpath, dirnames, filenames in os.walk(path):
        dirs.append(dirpath)
    return dirs[1:]

path = '/path/to/your/directory'
directories = get_directories(path)

print(directories)

输出:

['/path/to/your/directory/dir1', '/path/to/your/directory/dir2', '/path/to/your/directory/dir3']
方法2:使用list comprehension

我们还可以使用列表推导式来仅列出目录。

import os

path = '/path/to/your/directory'
directories = [x[0] for x in os.walk(path)]

print(directories[1:])

输出:

['/path/to/your/directory/dir1', '/path/to/your/directory/dir2', '/path/to/your/directory/dir3']

这种方法更加简洁,不过可能不如 os.walk() 函数的性能好。

以上是在Python中仅列出目录的两种方法,希望可以帮助到您!