(打标修改)读取每个文件夹内的txt,加入逗号后加入数据前

发布时间 2023-12-28 16:34:55作者: 不上火星不改名
import os

def rename_images_in_folder(folder_path, txt_prefix):
    """
    在指定文件夹中重命名所有图片文件,将给定的txt_prefix添加到每个文件名的开头。
    """
    for filename in os.listdir(folder_path):
        # 检查文件是否为图片(简单地通过文件扩展名判断)
        if filename.lower().endswith(('.png', '.jpg', '.jpeg', '.gif', '.bmp')):
            # 检查图片名称是否已经包含逗号,以避免重复添加
            if not filename.startswith(txt_prefix):
                new_name = f"{txt_prefix}{filename}"
                os.rename(os.path.join(folder_path, filename), os.path.join(folder_path, new_name))

def explore_directory(parent_directory):
    """
    遍历给定目录,重命名包含.txt文件的文件夹中的图片文件。
    """
    for root, dirs, files in os.walk(parent_directory):
        txt_files = [f for f in files if f.endswith('.txt')]
        if txt_files:
            # 找到含有.txt文件的文件夹,开始重命名这个文件夹中的图片文件
            for txt_file in txt_files:
                # 移除扩展名并添加逗号和空格,确保只添加一次
                txt_prefix = os.path.splitext(txt_file)[0] + ", "
                rename_images_in_folder(root, txt_prefix)

def main():
    parent_directory = input("请输入父目录的路径: ")
    explore_directory(parent_directory)
    print("操作完成。")

# 如果直接运行此脚本,则调用main函数。
if __name__ == "__main__":
    main()