pandas导入excel不改变excel的字体颜色格式
时间: 2023-10-01 19:08:42 浏览: 166
使用pandas导入excel时,默认情况下会将Excel格式转换为pandas的默认格式。如果要保留Excel中的字体颜色格式,可以使用openpyxl库来读取Excel文件,然后将其转换为pandas DataFrame。
以下是一个示例代码,可以将Excel文件中的数据读取为pandas DataFrame,并保留Excel中的字体颜色格式:
```python
import openpyxl
import pandas as pd
# 读取Excel文件
wb = openpyxl.load_workbook('example.xlsx')
# 选择第一个工作表
ws = wb.active
# 读取数据和格式
data = []
for row in ws.iter_rows(values_only=True):
row_data = []
for cell in row:
# 获取单元格的值和字体颜色
value = cell
color = cell.font.color.rgb if cell.font.color else None
row_data.append((value, color))
data.append(row_data)
# 转换为pandas DataFrame
df = pd.DataFrame(data)
# 设置列名
df.columns = [f'col{idx+1}' for idx in range(df.shape[1])]
# 保存为新的Excel文件
df.to_excel('output.xlsx', index=False)
```
在上面的示例代码中,我们使用openpyxl库读取Excel文件,并使用iter_rows方法逐行读取数据和格式。然后将数据和格式存储在一个二维列表中,并使用pandas DataFrame将其转换为DataFrame。最后,我们将DataFrame保存为新的Excel文件。这样就可以保留原始Excel文件中的字体颜色格式。
阅读全文