pandas 设置表格的只把标题行填充为浅蓝色,全表加边框,并输出到EXCEL,代码要阐
时间: 2024-05-02 21:22:21 浏览: 62
述清楚。
好的,您的要求我已经记下来了。以下是代码实现:
``` python
import pandas as pd
# 创建数据框
df = pd.DataFrame({
"姓名": ["张三", "李四", "王五"],
"年龄": [20, 22, 25],
"城市": ["北京", "上海", "广州"]
})
# 设置样式
header_style = {
"fill": {
"type": "pattern",
"patternType": "solid",
"fgColor": "CDE6F5"
},
"border": {
"top": {"style": "thin", "color": "000000"},
"bottom": {"style": "thin", "color": "000000"},
"left": {"style": "thin", "color": "000000"},
"right": {"style": "thin", "color": "000000"}
}
}
cells_style = {
"border": {
"top": {"style": "thin", "color": "000000"},
"bottom": {"style": "thin", "color": "000000"},
"left": {"style": "thin", "color": "000000"},
"right": {"style": "thin", "color": "000000"}
}
}
# 创建表格对象
table = pd.ExcelWriter("table.xlsx", engine="xlsxwriter")
df.to_excel(table, sheet_name="Sheet1", index=False, startrow=1)
# 找到sheet1对象
worksheet = table.sheets["Sheet1"]
# 设置标题行样式
header_range = f"A1:{worksheet.dim_colmax[1]}1"
worksheet.conditional_format(header_range, header_style)
# 设置表格单元格样式
cells_range = f"A2:{worksheet.dim_colmax[1]}{worksheet.dim_rowmax}"
worksheet.conditional_format(cells_range, cells_style)
# 保存并关闭文件
table.save()
```
这段代码实现了以下功能:
1. 创建一个具有三列数据的数据框。
2. 将数据框输出到名为“table.xlsx”的Excel文件中的“Sheet1”工作表中。
3. 将标题行的填充颜色设置为浅蓝色,边框设置为细线。这是通过使用`xlsxwriter`模块的`conditional_format()`方法实现的。
4. 将表格的单元格的边框全部设置为细线。
5. 最后,将更改保存到Excel文件中。
以上就是代码的详细实现过程,如果有任何疑问,请随时提出。
阅读全文