Python 读取目录下文件名

Python 读取目录下文件名

Python 读取目录下文件名

在实际编程过程中,经常会遇到需要读取某个目录下的所有文件名的情况。Python提供了丰富的库和函数来处理文件系统操作,可以很方便地实现目录下文件名的读取。

本文将详细介绍如何使用Python读取目录下的文件名,包括使用os模块和glob模块两种方法,同时附带代码示例和运行结果。

使用os模块读取文件名

os模块是Python内置的用于与操作系统进行交互的模块,其中提供了丰富的方法用于文件系统操作。我们可以使用os模块中的相关函数来读取目录下的文件名。

下面是一个使用os模块读取文件名的示例代码:

import os

dir_path = '/path/to/your/directory'

def list_files(dir_path):
    files = os.listdir(dir_path)
    return files

file_names = list_files(dir_path)
print(file_names)

上述代码中,我们首先定义了一个list_files函数,函数接收一个目录路径作为参数,并使用os.listdir函数获取该目录下所有文件名,然后返回文件名列表。最后我们调用list_files函数并打印结果。

下面展示一个示例目录结构:

directory/
    file1.txt
    file2.csv
    subdirectory/
        file3.txt
        file4.jpg

假设目录路径为/path/to/your/directory,当运行上述代码时,输出为:

['file1.txt', 'file2.csv', 'subdirectory']

可以看到,该方法可以很方便地获取目录下的所有文件名,但无法获取子目录的文件名。如果想要获取所有子目录中的文件名,可以使用递归的方式,或者使用glob模块。

使用glob模块读取文件名

glob模块是Python的标准库之一,提供了用于文件匹配的函数。使用glob模块可以方便地匹配文件路径,实现更加灵活的文件名读取。

下面是一个使用glob模块读取文件名的示例代码:

import glob

dir_path = '/path/to/your/directory'

def list_files(dir_path):
    files = glob.glob(dir_path + '/*')
    return files

file_names = list_files(dir_path)
print(file_names)

上述代码中,我们定义了一个list_files函数,函数接收一个目录路径作为参数,并使用glob.glob函数获取该目录下所有文件路径,然后返回文件路径列表。最后我们调用list_files函数并打印结果。

当运行上述代码时,对于上面的示例目录结构,输出为:

['file1.txt', 'file2.csv', 'subdirectory/file3.txt', 'subdirectory/file4.jpg']

可以看到,使用glob模块可以一次性获取目录下所有文件名,包括子目录中的文件名,非常方便。

总结

本文详细介绍了如何使用Python读取目录下的文件名,包括两种方法:使用os模块和使用glob模块。使用os模块能够简单地获取目录下的文件名,但无法获取子目录中的文件名;而使用glob模块则可以一次性获取所有文件名,包括子目录中的文件名。

根据实际需求,可以选择不同的方法来读取文件名。

Camera课程

Python教程

Java教程

Web教程

数据库教程

图形图像教程

办公软件教程

Linux教程

计算机教程

大数据教程

开发工具教程