python 遍历文件夹

python 遍历文件夹

在实际的工作中,我们经常需要对文件夹中的文件进行操作,如复制、移动、重命名或删除等。而要对文件夹中的文件进行操作,首先需要遍历文件夹,获取文件夹中的所有文件。本文将介绍使用python遍历文件夹的方法。

os.walk()方法

在python中,可以使用os模块的walk()方法遍历文件夹。该方法返回三个参数,分别是路径、该路径下的文件夹名和该路径下的文件名。可以使用for循环遍历这三个参数,获取文件夹中的所有文件。

示例代码:

import os

# 遍历文件夹
for dirpath, dirnames, filenames in os.walk('D:/test'):
    # 输出当前遍历的路径
    print('路径:', dirpath)
    # 输出当前路径下的文件夹名
    print('文件夹:', dirnames)
    # 输出当前路径下的文件名
    print('文件名:', filenames)

代码输出:

路径: D:/test
文件夹: ['dir1', 'dir2']
文件名: ['file1.txt', 'file2.txt']
路径: D:/test\dir1
文件夹: ['dir3']
文件名: ['file3.txt', 'file4.txt']
路径: D:/test\dir1\dir3
文件夹: []
文件名: ['file6.txt']
路径: D:/test\dir2
文件夹: []
文件名: ['file5.txt']

从结果中可以看出,os.walk()方法遍历文件夹时,会先输出该路径下的所有文件夹,再输出该路径下的所有文件。

os.listdir()方法

除了使用os.walk()方法遍历文件夹,还可以使用os.listdir()方法获取文件夹下的文件列表。该方法返回文件夹下所有文件和文件夹的名称,可以使用for循环进行遍历。

示例代码:

import os

# 获取文件夹下的文件列表
dirList = os.listdir('D:/test')

# 输出文件夹下的文件列表
for file in dirList:
    print(file)

代码输出:

dir1
dir2
file1.txt
file2.txt

使用os.path模块获取文件路径

当获取到文件夹下的文件名后,需要考虑如何获取文件的路径。可以使用os.path模块来获取文件的路径,可以使用os.path.join()方法将文件夹路径和文件名拼接成完整的文件路径。

示例代码:

import os

# 获取文件夹下的文件列表
dirList = os.listdir('D:/test')

# 遍历文件列表
for file in dirList:
    # 获取文件路径
    filePath = os.path.join('D:/test', file)
    # 输出文件路径
    print(filePath)

代码输出:

D:/test\dir1
D:/test\dir2
D:/test\file1.txt
D:/test\file2.txt

过滤文件列表

有时候,我们需要获取指定后缀名的文件列表,那么可以使用列表推导式来过滤文件列表。

示例代码:

import os

# 获取文件夹下的所有文件
allFiles = os.listdir('D:/test')

# 过滤文件列表,获取txt文件
txtFiles = [file for file in allFiles if file.endswith('.txt')]

# 遍历文件列表
for file in txtFiles:
    # 获取文件路径
    filePath = os.path.join('D:/test', file)
    # 输出文件路径
    print(filePath)

代码输出:

D:/test\file1.txt
D:/test\file2.txt

结论

本文介绍了使用python遍历文件夹的方法,包括os.walk()方法、os.listdir()方法、使用os.path模块获取文件路径以及过滤文件列表等内容。使用这些方法,可以方便地对文件夹中的文件进行操作。

Camera课程

Python教程

Java教程

Web教程

数据库教程

图形图像教程

办公软件教程

Linux教程

计算机教程

大数据教程

开发工具教程