有没有办法在 Python 中返回当前目录中所有子目录的列表?
我知道您可以对文件执行此操作,但我需要获取目录列表。
您可以使用 Python 中的 os 模块来获取当前目录中所有子目录的列表。以下是如何实现的方法:
os
import os # 获取当前目录中所有子目录的列表 subdirectories = [name for name in os.listdir() if os.path.isdir(name)] # 打印子目录列表 print(subdirectories)
os.listdir()
os.listdir() 返回一个列表,包含指定路径(默认是当前目录)中所有条目的名称。
os.path.isdir() 函数:
os.path.isdir()
os.path.isdir(name) 检查 name 是否是一个目录。如果 name 是一个已经存在的目录,则返回 True;否则返回 False。
os.path.isdir(name)
name
True
False
列表推导式:
[name for name in os.listdir() if os.path.isdir(name)]
对于每个条目 name,它检查 os.path.isdir(name) 是否为 True。如果是,就将 name 添加到 subdirectories 列表中。
subdirectories
打印结果:
print(subdirectories)
这种方法有效地列出了当前目录中的所有子目录。如果您需要列出不同目录中的子目录,可以将目录路径作为参数传递给 os.listdir()(例如 os.listdir('/path/to/directory'))。
os.listdir('/path/to/directory')