读取table文件夹内所有的xlsx表格文件,并把xlsx表格内每个sheet的“A”内容替换成“B”,“C”内容替换成“D”,然后找到“Q”列复制插入在“B”列后,把“W”列复制插入在“D”后,保存文件
时间: 2024-11-14 21:24:00 浏览: 11
为了实现这个需求,我们可以使用pandas库来读取xlsx文件,处理数据并写回。首先确保已经安装了`openpyxl`和`pandas`库,如果没有安装,可以通过以下命令安装:
```bash
pip install openpyxl pandas
```
下面是处理文件的Python代码示例:
```python
import os
import pandas as pd
# 定义要操作的文件夹路径
folder_path = 'table'
# 遍历文件夹内的所有xlsx文件
for filename in os.listdir(folder_path):
if filename.endswith('.xlsx'):
# 读取excel文件中的每一个Sheet
for sheet_name in pd.ExcelFile(os.path.join(folder_path, filename)).sheet_names:
df = pd.read_excel(os.path.join(folder_path, filename), sheet_name=sheet_name)
# 替换"A"和"C"列的内容
df['A'] = 'B'
df['C'] = 'D'
# 找到'Q'列并复制插入'B'列后面,'W'列插入'D'列后面
df.insert(1, 'Q', df.pop('Q')) # 将Q列移到B列之后(索引1)
df.insert(3, 'W', df.pop('W')) # 将W列移到D列之后(索引3)
# 写回原文件
with pd.ExcelWriter(os.path.join(folder_path, f'{filename}_processed.xlsx'), engine='openpyxl') as writer:
df.to_excel(writer, sheet_name=sheet_name, index=False)
# 如果你想保留原始的其他sheet,可以添加更多的to_excel调用,传入相应的sheet_name
# 提示完成
print("处理过程已完成,所有.xlsx文件都已替换和调整了内容,并保存为_processed.xlsx")
```
运行这段代码后,`table`文件夹下的`.xlsx`文件会被处理,每个Sheet的"A"列内容被替换为"B","C"列内容被替换为"D",然后按照要求插入新的列。
阅读全文