1 回答

TA貢獻1963條經(jīng)驗 獲得超6個贊
如您所見,格式繼續(xù)到 AL、AM、AN、AO 等列。
這就是行格式在 Excel 中的工作方式。如果將其應用于一行,則所有單元格都會被格式化。
我可以以某種方式指定 A1:AK1 或類似的東西嗎?
如果您只想格式化某些單元格,那么最好將格式僅應用于這些單元格。例如:
import xlsxwriter
workbook = xlsxwriter.Workbook('test.xlsx')
worksheet = workbook.add_worksheet()
header_data = ['EID', 'Notification', 'Test #']
header_format = workbook.add_format({'bold': True,
'bottom': 2,
'bg_color': '#F9DA04'})
for col_num, data in enumerate(header_data):
worksheet.write(0, col_num, data, header_format)
workbook.close()
輸出:
如果重要的話,每個工作表都是使用 Pandas 的多個數(shù)據(jù)幀的 pd.concat() 的結果。
有關如何從數(shù)據(jù)幀格式化標頭的示例,請參見 XlsxWriter文檔中的此示例:
import pandas as pd
# Create a Pandas dataframe from the data.
df = pd.DataFrame({'Data1': [10, 20, 30, 20],
'Data2': [10, 20, 30, 20],
'Data3': [10, 20, 30, 20],
'Data4': [10, 20, 30, 20]})
# Create a Pandas Excel writer using XlsxWriter as the engine.
writer = pd.ExcelWriter('pandas_simple.xlsx', engine='xlsxwriter')
# Turn off the default header and skip one row to allow us to insert a
# user defined header.
df.to_excel(writer, sheet_name='Sheet1', startrow=1, header=False)
# Get the xlsxwriter workbook and worksheet objects.
workbook = writer.book
worksheet = writer.sheets['Sheet1']
# Add a header format.
header_format = workbook.add_format({'bold': True,
'bottom': 2,
'bg_color': '#F9DA04'})
# Write the column headers with the defined format.
for col_num, value in enumerate(df.columns.values):
worksheet.write(0, col_num + 1, value, header_format)
# Close the Pandas Excel writer and output the Excel file.
writer.save()
輸出:
添加回答
舉報