Python 获取文件夹下文件名

Python 获取文件夹下文件名

Python 获取文件夹下文件名

介绍

在编程中,经常会遇到需要获取一个文件夹下的所有文件名的情况。Python提供了多种方法来实现这个功能。本文将介绍一些常用的方法以及它们的特点和应用场景。

方法一:使用os模块的listdir函数

os模块是一个Python标准库中的模块,其中包含了许多与操作系统相关的函数。其中的listdir函数可以用于获取指定文件夹下的所有文件和文件夹名称。

下面是一个简单的示例,演示如何使用os模块的listdir函数来获取文件夹下的所有文件名:

import os

folder_path = '/path/to/folder'

# 获取文件夹下的所有文件名
file_names = os.listdir(folder_path)

# 输出文件名
for file_name in file_names:
    print(file_name)

运行以上代码,将会输出指定文件夹下的所有文件名。

方法二:使用glob模块的glob函数

glob模块是一个用于搜索指定文件夹下的文件的模块。glob函数可以通过指定的通配符模式来匹配文件名。

下面是一个示例,演示如何使用glob模块的glob函数来获取文件夹下的所有文件名:

import glob

folder_path = '/path/to/folder'

# 获取文件夹下的所有文件名
file_names = glob.glob(folder_path + '/*')

# 输出文件名
for file_name in file_names:
    print(file_name)

运行以上代码,将会输出指定文件夹下的所有文件名。

方法三:使用Path对象

Path对象是Python标准库中的pathlib模块中表示文件和文件夹路径的对象。它提供了一种简洁和易于使用的API来操作文件和文件夹。

下面是一个示例,演示如何使用Path对象来获取文件夹下的所有文件名:

from pathlib import Path

folder_path = Path('/path/to/folder')

# 获取文件夹下的所有文件名
file_names = [str(file) for file in folder_path.iterdir() if file.is_file()]

# 输出文件名
for file_name in file_names:
    print(file_name)

运行以上代码,将会输出指定文件夹下的所有文件名。

方法四:递归获取文件夹下的文件名

以上的方法只能获取指定文件夹下的直接子文件名,并不能获取子文件夹中的文件名。如果需要获取子文件夹中的文件名,可以使用递归的方式来实现。

下面是一个示例,演示如何使用递归方式来获取文件夹下的所有文件名:

import os

def get_file_names(folder_path):
    file_names = []
    for root, dirs, files in os.walk(folder_path):
        for file in files:
            file_names.append(os.path.join(root, file))
    return file_names

folder_path = '/path/to/folder'

# 获取文件夹下的所有文件名
file_names = get_file_names(folder_path)

# 输出文件名
for file_name in file_names:
    print(file_name)

运行以上代码,将会输出指定文件夹下及其子文件夹中的所有文件名。

总结

本文介绍了四种常用的方法来获取文件夹下的文件名。根据实际需求选择合适的方法来实现,可以提高代码的效率和可读性。

Camera课程

Python教程

Java教程

Web教程

数据库教程

图形图像教程

办公软件教程

Linux教程

计算机教程

大数据教程

开发工具教程