写一个脚本,如果excelA列和文件名称一致,文件打包成文件夹,用B列和C列命名
时间: 2024-11-03 14:23:08 浏览: 8
读写xlsx.zip
可以使用Python的pandas库配合shutil和os模块来实现这个需求。假设你有一个Excel文件,其中包含三列数据:A列是文件路径,B列是文件夹名,C列是文件名。下面是一个简单的脚本示例:
```python
import pandas as pd
import os
import shutil
# 读取Excel文件
df = pd.read_excel('your_file.xlsx')
# 检查A列是否为空或者路径不存在,这里仅作示例,实际使用需要添加错误处理
if not df['A'].empty and all(os.path.exists(path) for path in df['A']):
# 创建一个临时目录用于存放文件
temp_dir = 'temp_files'
if not os.path.exists(temp_dir):
os.makedirs(temp_dir)
for index, row in df.iterrows():
file_path = row['A']
folder_name = row['B']
file_name = row['C']
# 构建目标文件夹路径
target_folder = os.path.join(temp_dir, folder_name)
# 如果文件夹不存在,则创建
if not os.path.exists(target_folder):
os.makedirs(target_folder)
# 将文件复制到对应的文件夹中
source_file = os.path.join(file_path, file_name)
target_file = os.path.join(target_folder, file_name)
shutil.copy2(source_file, target_file)
print("文件已打包并保存在临时目录:", temp_dir)
else:
print("检查文件路径或确认是否有数据存在A列")
# 打包完成后,你可以选择删除临时目录或者将内容移动到其他位置,这取决于你的具体需求
```
阅读全文