可以使用os.listdir()
函数来获取目录中的文件列表。示例如下:
如果省略参数或参数为None,则此时path为当前目录path='.'
。
这么做会得到原始的目录文件列表,包括所有的文件、子目录、符号链接等。如果要以某种方式筛选数据,可以考虑利用推导式结合os.path
模块中各函数来完成。示例如下:
得到目录下所有文件
|
|
得到目录下文件数
|
|
得到目录下所有文件夹
|
|
得到目录下文件夹数
|
|
得到指定类型(文件扩展名)的文件
字符串的startswith()
和endswith()
方法对于筛选目录中的内容也同样有用。比如:
文件名的匹配
至于文件名的匹配,可能会用到glob
或者fnmatch
模块。示例如下:
讨论
得到目录内容的列表很简单,但是这只会带来每个条目的名称。如果想得到一些附加的元数据,比如文件大小、修改日期等。要么使用os.path
模块中的其它函数,要么使用os.stat()
函数。要得到这些数据,示例如下: