python批量修改Excel文件格式:文本默认是黑色的,将每列的 表头变为黑体并加粗:把偶数行所有列的文本设置为宋体,红色。奇数行,所有单元格,设置为蓝色,宋体。
时间: 2024-02-18 08:04:11 浏览: 23
你可以使用 Python 的 pandas 和 openpyxl 库来批量修改 Excel 文件格式。下面是一个示例代码,可以实现你的需求:
```python
import pandas as pd
from openpyxl.utils.dataframe import dataframe_to_rows
from openpyxl.styles import Font, PatternFill
# 读取 Excel 文件
df = pd.read_excel('input.xlsx')
# 设置表头格式为黑体加粗
header_font = Font(name='黑体', bold=True)
for cell in df.columns:
cell.font = header_font
# 设置偶数行文本格式为宋体,红色
even_fill = PatternFill(start_color='FFC7CE', end_color='FFC7CE', fill_type='solid')
even_font = Font(name='宋体', color='FF0000')
for i in range(1, len(df), 2):
for cell in df.iloc[i]:
cell.fill = even_fill
cell.font = even_font
# 设置奇数行文本格式为宋体,蓝色
odd_fill = PatternFill(start_color='B4C6E7', end_color='B4C6E7', fill_type='solid')
odd_font = Font(name='宋体', color='0000FF')
for i in range(0, len(df), 2):
for cell in df.iloc[i]:
cell.fill = odd_fill
cell.font = odd_font
# 保存修改后的 Excel 文件
wb = pd.ExcelWriter('output.xlsx', engine='openpyxl')
ws = wb.book.create_sheet('Sheet1')
for r in dataframe_to_rows(df, index=False, header=True):
ws.append(r)
wb.save()
```
在这个示例代码中,我们使用了 pandas 库来读取 Excel 文件并处理数据,使用 openpyxl 库来修改单元格的格式和保存修改后的 Excel 文件。我们首先读取 Excel 文件,然后循环遍历每个单元格,根据单元格所在的行数和列数设置不同的格式。最后将修改后的数据写入一个新的 Excel 文件中。