在Python中列出目录中的所有文件
在Python中,我们可以利用Python中强大的函数轻松列出目录中的所有文件os(操作系统)和 os.path
方法1:使用os.listdir()
os.listdir()函数提供所有文件和目录的列表在指定目录内。但是,如果我们只想过滤掉文件,则需要将其与 os.path.isfile() 结合起来检查每个条目。
示例:
from os import listdir from os.path import isfile, join mypath = "/path/to/directory" onlyfiles = [f for f in listdir(mypath) if isfile(join(mypath, f))]
方法2:使用os.walk()
os.walk() 函数为其访问的每个目录生成两个列表:一个用于文件,一个用于目录。如果我们只需要顶级目录,我们可以在第一个yield之后中断迭代:
示例:
from os import walk f = [] for (dirpath, dirnames, filenames) in walk(mypath): f.extend(filenames) break
单行选项:
或者,使用 os.walk() 的更简洁版本是:
from os import walk filenames = next(walk(mypath), (None, None, []))[2] # [] if no file
这提供了一种快速有效的方法来检索给定目录中所有文件名的列表。
以上是如何使用Python列出目录中的所有文件?的详细内容。更多信息请关注PHP中文网其他相关文章!