df保存为excel

df保为excel

pandas的dataframe保存为excel,设置列宽,行高和自动换行。

python 复制代码
from openpyxl.styles import Alignment, Font
from openpyxl.utils.dataframe import dataframe_to_rows
from openpyxl.workbook import Workbook


def save_excel(df, filename, col_width=50, row_height=40):
    wb = Workbook()
    ws = wb.active
    # 设置表头字体为加粗
    bold_font = Font(bold=True)
    # 将DataFrame写入Excel工作表
    for r_idx, row in enumerate(dataframe_to_rows(df, index=False, header=True)):
        for c_idx, value in enumerate(row, 1):
            cell = ws.cell(row=r_idx + 1, column=c_idx, value=value)
            # 设置表头加粗
            if r_idx == 0:
                cell.font = bold_font
            # 设置单元格的换行功能
            cell.alignment = Alignment(wrap_text=True)
    # 调整列宽
    for col in ws.columns:
        column = col[0].column_letter
        ws.column_dimensions[column].width = col_width
    # 调整行高
    for row in ws.iter_rows():
        for cell in row:
            if cell.row > 1:  # 不调整第一行(表头)
                ws.row_dimensions[cell.row].height = row_height
    # 保存Excel文件
    wb.save(filename)
相关推荐
tkevinjd18 小时前
MiniCode 项目详解6:原项目控制系统的10个缺陷(已修复)
python·llm·agent
dNGUZ7UGj19 小时前
10分钟完成第一个Python小游戏
python·django
没有梦想的咸鱼185-1037-166319 小时前
AI-Python机器学习与深度学习技术:CNN/Transformer/扩散模型、SHAP可解释及Hermes智能体自动化
人工智能·python·深度学习·机器学习·chatgpt·cnn·transformer
霸道流氓气质19 小时前
SpringBoot中通用工具类库(Utils)封装与使用实践
spring boot·后端·python
Draina21 小时前
CBC填充预言攻击-CBC Padding Oracle Crypto Attack
python·安全·web安全·网络安全·密码学·安全性测试
Angel Q.1 天前
特征提取 | DINO 到 DINOv3
图像处理·python
不如语冰1 天前
AI大模型入门-pytorch-张量2 tensor创建
python
NPE~1 天前
[AI]Agent开发——ADK框架使用
人工智能·python·ai·教程·adk·agent开发
矮个史蒂芬1 天前
统计verilog .v文件中output 的bit数
python
gwf2161 天前
磨损均衡算法(Wear Leveling)——SSD如何让每块闪存“公平退休“?
运维·数据库·人工智能·python·嵌入式硬件·算法·智能硬件