gpt4 book ai didi

python - Xlsxwriter - 使用表中的变量来表现出色

转载 作者:行者123 更新时间:2023-12-04 20:25:20 25 4
gpt4 key购买 nike

我正在使用 pandas concat 将几个数据框(表格)合并到一个 excel 文档中。
我使用 Xlsxwriter 输出 excel。

我的问题是,在下面的代码中,我使用 worksheet.add_table('A1:D26') 在 excel 中指定了表格的范围。 .这适用于这个示例文件。但在最终文档中,数据帧的数量取决于输入。所以有时它是 df1 到 df5。比 26 行就足够了。但它也可以更少,可能是 1 或 2 个数据帧或更多。
我可以使用变量而不是 D26 吗?

例如 worksheet.add_table('A1:Dx') ,其中 x 由用户输入定义?

提前致谢!

import pandas as pd
import xlsxwriter

df1 = pd.DataFrame({'0':['X','1','2','3'],
'1':['1','☐','☐','☐'],
'2':['2','☐','☐','☐'],
'3':['3','☐','☐','☐'],
'4':['','','','']})

df2 = pd.DataFrame({'0':['X','1','2','3'],
'1':['1','☐','☐','☐'],
'2':['2','☐','☐','☐'],
'3':['3','☐','☐','☐'],
'4':['','','','']})

df3 = pd.DataFrame({'0':['X','1','2','3'],
'1':['1','☐','☐','☐'],
'2':['2','☐','☐','☐'],
'3':['3','☐','☐','☐'],
'4':['','','','']})

df4 = pd.DataFrame({'0':['X','1','2','3'],
'1':['1','☐','☐','☐'],
'2':['2','☐','☐','☐'],
'3':['3','☐','☐','☐'],
'4':['','','','']})

df5 = pd.DataFrame({'0':['X','1','2','3'],
'1':['1','☐','☐','☐'],
'2':['2','☐','☐','☐'],
'3':['3','☐','☐','☐'],
'4':['','','','']})

result = pd.concat([df1, df2, df3, df4, df5], axis=1)

workbook = xlsxwriter.Workbook('example.xlsx')
worksheet = workbook.add_worksheet('output')
worksheet.add_table('A1:D26', {'data': result.values.T.tolist(),'style': 'None', 'header_row': False})

workbook.close()

最佳答案

您可以尝试使用格式字符串。这里我定义了 x1 和 x2,然后使用 %d 将它们插入到您的单元格范围字符串中。指定整数格式。该字符串后跟 % (<arg1>,<arg2>) .

x1 = 2
x2 = 27
worksheet.add_table('A%d:D%d'%(x1,x2), {'data': result.values.T.tolist(),'style': 'None', 'header_row': False})

关于python - Xlsxwriter - 使用表中的变量来表现出色,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61526526/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com