Python 脚本:根据 Excel 文件分类文件夹
以下是一个示例 Python 脚本,它可以帮助你实现对指定目录下的所有文件夹进行分类,并根据文件夹名称中的数字和字母部分匹配指定 Excel 文件的指定列,并根据匹配到的值进行分类。\n\npython\nimport os\nimport re\nimport xlrd\n\n# 指定目录路径\ndirectory = "指定目录路径"\n\n# 指定 Excel 文件路径\nexcel_file = "指定 Excel 文件路径"\n\n# 指定 Excel 文件中要匹配的列索引\nmatch_column_index = 0\n\n# 指定 Excel 文件中要获取分类值的列索引\ncategory_column_index = 1\n\n# 获取目录下所有文件夹\nfolders = [f for f in os.listdir(directory) if os.path.isdir(os.path.join(directory, f))]\n\n# 打开 Excel 文件\nworkbook = xlrd.open_workbook(excel_file)\nsheet = workbook.sheet_by_index(0)\n\n# 创建分类字典\ncategories = {}\n\n# 循环处理每个文件夹\nfor folder in folders:\n # 提取文件夹名称中的数字和字母部分\n folder_name = re.sub(r"[^a-zA-Z0-9]", "", folder)\n \n # 在 Excel 文件中查找匹配项\n for row in range(1, sheet.nrows):\n cell_value = sheet.cell_value(row, match_column_index)\n if folder_name.lower() in str(cell_value).lower():\n # 获取分类值\n category_value = sheet.cell_value(row, category_column_index)\n \n # 将文件夹添加到相应的分类中\n if category_value in categories:\n categories[category_value].append(folder)\n else:\n categories[category_value] = [folder]\n break\n\n# 输出分类结果\nfor category, folders in categories.items():\n print("分类: ", category)\n print("文件夹: ", folders)\n print()\n\n\n请确保将上述代码中的指定目录路径替换为你要处理的目录路径,将指定 Excel 文件路径替换为你要匹配的 Excel 文件路径,并根据需要修改match_column_index和category_column_index以匹配正确的列索引。\n\n该脚本会将分类结果打印输出,你也可以根据需要进行进一步的处理和操作。
原文地址: https://www.cveoy.top/t/topic/pBM8 著作权归作者所有。请勿转载和采集!