您的位置:

Python遍历文件夹实现文件管理

一、Python遍历文件夹生成列表

在Python中,通过使用os模块的相关方法,可以遍历文件夹并生成文件列表。下面是一个简单的代码示例:

import os

# 要遍历的文件夹路径
folder_path = "/Users/user/Desktop/Test_Folder"

# 遍历文件夹并生成文件列表
file_list = []
for filename in os.listdir(folder_path):
    file_list.append(os.path.join(folder_path, filename))

print(file_list)

上述代码先定义了要遍历的文件夹路径,然后使用os.listdir方法获取该文件夹下的文件列表,再通过os.path.join方法将文件夹路径和文件名拼接起来,生成包含完整路径的文件列表。

二、Python文件夹判断

对于需要处理的文件夹,有时需要先判断其是否存在。下面是一个判断文件夹是否存在的代码示例:

import os

# 要判断的文件夹路径
folder_path = "/Users/user/Desktop/Test_Folder"

# 判断文件夹是否存在
if os.path.exists(folder_path):
    print("Folder exists.")
else:
    print("Folder does not exist.")

上述代码使用os.path.exists方法判断文件夹是否存在。

三、Python遍历文件夹默认按名称排序

使用os.listdir遍历文件夹时,生成的文件列表默认按照文件名称排序。下面是一个按照默认顺序遍历文件夹并打印文件名的代码示例:

import os

# 要遍历的文件夹路径
folder_path = "/Users/user/Desktop/Test_Folder"

# 遍历文件夹并按默认顺序打印文件名
for filename in os.listdir(folder_path):
    print(filename)

四、Python文件夹名字

有时需要获取文件夹的名称,下面是一个获取文件夹名称的代码示例:

import os

# 要获取名称的文件夹路径
folder_path = "/Users/user/Desktop/Test_Folder"

# 获取文件夹名称
folder_name = os.path.basename(folder_path)

print(folder_name)

上述代码使用os.path.basename方法获取文件夹名称。

五、Python遍历文件夹下的图片

在遍历文件夹时,有时需要筛选出特定类型的文件,下面是一个遍历文件夹并获取所有图片文件的代码示例:

import os

# 要遍历的文件夹路径
folder_path = "/Users/user/Desktop/Test_Folder"

# 遍历文件夹并获取所有图片文件
image_list = []
for filename in os.listdir(folder_path):
    if filename.endswith((".png", ".jpg", ".jpeg")):
        image_list.append(os.path.join(folder_path, filename))

print(image_list)

上述代码使用os.path.join方法拼接文件夹路径和文件名,如果文件名以".png"、".jpg"或".jpeg"结尾,则将该文件的完整路径添加到image_list中。

六、Python遍历图片文件

对于获取到的图片文件,有时需要进一步操作,下面是一个对图片文件进行处理的代码示例:

from PIL import Image
import os

# 要遍历的文件夹路径
folder_path = "/Users/user/Desktop/Test_Folder"

# 遍历文件夹并处理所有图片文件
for filename in os.listdir(folder_path):
    if filename.endswith((".png", ".jpg", ".jpeg")):
        image_path = os.path.join(folder_path, filename)
        image = Image.open(image_path)
        image = image.resize((256, 256))
        image.save(image_path)

上述代码使用PIL库中的Image.open方法打开图片文件,对其进行修改后再使用Image.save方法保存。

七、Python遍历文件夹中的文件

除了筛选特定类型的文件外,有时也需要获取文件夹中的所有文件,下面是一个获取所有文件的代码示例:

import os

# 要遍历的文件夹路径
folder_path = "/Users/user/Desktop/Test_Folder"

# 遍历文件夹并获取所有文件
file_list = []
for foldername, subfolders, filenames in os.walk(folder_path):
    for filename in filenames:
        file_list.append(os.path.join(foldername, filename))

print(file_list)

上述代码使用os.walk方法遍历文件夹及其子文件夹,其中foldername代表当前文件夹路径,subfolders代表当前文件夹下的子文件夹列表,filenames代表当前文件夹中的文件列表。

八、Python遍历文件夹下所有文件jpg

筛选特定类型的文件时,有时需要使用正则表达式来精确匹配文件名,下面是一个筛选文件夹下所有jpg文件的代码示例:

import os
import re

# 要遍历的文件夹路径
folder_path = "/Users/user/Desktop/Test_Folder"

# 遍历文件夹并获取所有jpg文件
jpg_list = []
for filename in os.listdir(folder_path):
    if re.match(r'.*\.jpg$', filename):
        jpg_list.append(os.path.join(folder_path, filename))

print(jpg_list)

上述代码使用re.match方法判断文件名是否以".jpg"结尾。

九、Python遍历文件夹下的所有excel

除了筛选特定类型的文件,有时也需要筛选特定名称的文件,下面是一个筛选文件夹下所有名为"test.xlsx"的文件的代码示例:

import os

# 要遍历的文件夹路径
folder_path = "/Users/user/Desktop/Test_Folder"

# 遍历文件夹并获取所有名为test.xlsx的文件
excel_list = []
for filename in os.listdir(folder_path):
    if filename == "test.xlsx":
        excel_list.append(os.path.join(folder_path, filename))

print(excel_list)

上述代码判断文件名是否为"test.xlsx",如果是则将该文件的完整路径添加到excel_list中。