设计ti风格

2024-04-18 19:34:58 发布

您现在位置:Python中文网/ 问答频道 /正文

 def multiple_dfs(file_name, sheet, *args):
        """
        Put multiple dataframes into one xlsx sheet
        """

        row=2
        writer = pd.ExcelWriter(file_name, engine='openpyxl')

        df = pd.DataFrame({'user': ['Bob', 'Jane', 'Alice'], 
                   'income': [40000, 50000, 42000]})
        df2 = pd.DataFrame(['Title'])

        df.to_excel(writer, sheet, startrow=row, index=False)
        df2.to_excel(writer, sheet, startrow=0, startcol=0, header=None, \
                 index=False)

我想用pandas(或者用openpyxl来调整和加粗Title,如果不能用pandas的话)。有没有一种方法可以准确地“用Python”来做呢?在

我知道我们可以使用http://openpyxl.readthedocs.io/en/default/styles.html,但我不知道如何在代码中使用它。在

更新

根据@AndyHayden的说法,通常下面的代码应该加粗标题,但这似乎行不通。在

^{pr2}$

标题从未以粗体显示。我怎么能修好呢?在

如果问题不清楚,请告诉我。在


Tags: tonamedataframedftitlemultipleexcelfile
1条回答
网友
1楼 · 发布于 2024-04-18 19:34:58

openpyxl docs提供了一种简洁的方法:

from openpyxl import Workbook
from openpyxl.utils.dataframe import dataframe_to_rows

wb = Workbook()
ws = wb.active

for r in dataframe_to_rows(df, index=True, header=True):
    ws.append(r)

for cell in ws['A'] + ws[1]:
    cell.style = 'Pandas'

wb.save("pandas_openpyxl.xlsx")

注意:如果您要预先执行其他插入操作(如您在上一个问题中建议的那样,则必须使用不同的行号。在

相关问题 更多 >