【问题标题】:Auto-adjust column width to fit the content in panda generated Excel files自动调整列宽以适应熊猫生成的 Excel 文件中的内容
【发布时间】:2021-11-05 08:50:28
【问题描述】:

我正在使用pandas.to_excel() 生成xlsx 文件。

在我的 Win10 上,默认使用 openpyxl,因为未安装 xlsxwriter。我的问题涉及两个选项。

生成的xlsx 文件的列对于内容来说太小了。我必须通过 Excel 调整它们。

这是生成的工作表的样子

这就是在 Excel 中自动调整宽度后的样子。

我希望 pandas/openpyxl/xlsxwriter 自行进行自动调整。有什么选择或方法吗?

【问题讨论】:

    标签: python pandas openpyxl xlsxwriter


    【解决方案1】:

    我知道的唯一可靠的方法是在 xlwings 中使用.autofit()

    import pandas as pd
    import xlwings as xw
    
    filename = r"test.xlsx"
    df = pd._testing.makeDataFrame()
    df.to_excel(filename)
    
    with xw.App(visible=False) as app:
        wb = xw.Book(filename)
        for ws in wb.sheets:
            ws.autofit(axis="columns")
        wb.save(filename)
        wb.close()
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-07-18
      • 2011-02-22
      • 1970-01-01
      • 2022-10-05
      • 2017-02-10
      • 1970-01-01
      • 1970-01-01
      • 2011-05-27
      相关资源
      最近更新 更多