Python中文件夹内匹配文件通用脚本

2023-12-27 09:29:46

1.一个文件夹里面有多个文件,需要判断特定的几个个文件是否在文件夹里面

如果都在返回True,如果不都在,返回False

import os

def check_files_exist(folder_path, files_to_check):
    for file_name in files_to_check:
        file_path = os.path.join(folder_path, file_name)
        if not os.path.exists(file_path):
            return False
    return True

folder_path = "your_folder_path"  # 替换为您文件夹的路径
files_to_check = ["file1.txt", "file2.txt", "file3.txt", "file4.txt", "file5.txt", "file6.txt", "file7.txt"]

result = check_files_exist(folder_path, files_to_check)
print(result)

2.判断文件夹中是否存在多个特定后缀的文件

文件夹中有多个文件,如何判断文件夹里是否存在几个特定的后缀文件,如果存在返回True,不存在返回False。

要判断文件夹中是否存在多个特定后缀的文件,您可以遍历文件夹中的所有文件,并检查每个文件的后缀名。示例代码:

import os

def check_files_exist(folder_path, extensions):
    file_count = 0  # 记录特定后缀文件的数量

    for file_name in os.listdir(folder_path):
        file_path = os.path.join(folder_path, file_name)

        if os.path.isfile(file_path):  # 只处理文件,忽略文件夹
            file_extension = os.path.splitext(file_name)[1].lower()  # 获取文件后缀并转为小写

            if file_extension in extensions:
                file_count += 1  # 如果文件后缀在列表中,则增加计数值

    return file_count == len(extensions)  # 判断特定后缀文件的数量是否等于列表中的后缀数量

folder_path = "your_folder_path"  # 替换为您的文件夹路径
extensions = [".jpg", ".png", ".txt"]  # 替换为您想要检查的特定后缀列表

result = check_files_exist(folder_path, extensions)
print(result)

3.当文件夹中存在所有特定值的文件

当文件夹中存在所有特定值的文件时才返回 True,并且文件不足时返回 False,示例代码:

import os

def check_files_exist(folder_path, special_values):
    matched_count = 0  # 记录匹配特定值的文件数量

    for file_name in os.listdir(folder_path):
        file_path = os.path.join(folder_path, file_name)

        if os.path.isfile(file_path):  # 只处理文件,忽略文件夹
            for value in special_values:
                if value in file_name:
                    matched_count += 1  # 如果文件名中包含特定值,增加计数值
                    break  # 匹配到一个特定值后,跳出当前循环,继续下一个文件的检查

    return matched_count == len(special_values)  # 判断匹配特定值的文件数量是否等于特定值列表的长度

folder_path = "your_folder_path"  # 替换为您的文件夹路径
special_values = ["abc", "123", "xyz"]  # 替换为您要检查的特定值列表

result = check_files_exist(folder_path, special_values)
print(result)

文章来源:https://blog.csdn.net/m0_57021623/article/details/135207798
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。