如何解决组合两个列表以制作 Xlsxwriter 行
给定两个字符串列表(年和季度),像这样创建一个 excel 行:
"2001 q1","2001 q2",...,"2008 q3","2008 q4"
这是我目前的代码:
import xlsxwriter
from xlsxwriter import workbook
workbook = xlsxwriter.Workbook('template.xlsx')
worksheet_data = workbook.add_worksheet( "data" )
year = ["2001 ","2002 ","2003 ","2004 ","2005 ","2006 ","2007 ","2008 "]
quarter = ['q1 ','q2 ','q3 ','q4 ']
for x in year:
for y in quarter:
worksheet_data.write_row(
"A1",#start cell
[x + y]
)
workbook.close()
我需要这个用于客户定制的表格。
有什么想法吗?
解决方法
希望对您有所帮助:
import xlsxwriter
from xlsxwriter import Workbook
workbook = xlsxwriter.Workbook('template.xlsx')
worksheet_data = workbook.add_worksheet("data")
data = []
year = ["2001 ","2002 ","2003 ","2004 ","2005 ","2006 ","2007 ","2008 "]
quarter = ['q1 ','q2 ','q3 ','q4 ']
for x in year:
for y in quarter:
data.append(x + y)
worksheet_data.write_row(0,data)
workbook.close()
write_row(0,data) 是零索引的,所以这是 A1。
,假设您想将 str(x+y) 写入“A1”,您可能需要像这样格式化您的请求:
write_row(1,1,str(x+y))
参考:https://xlsxwriter.readthedocs.io/worksheet.html
风格方面,我也推荐:
- 不要将空格放在
year
和quarter
数组中,而是在使用这些值时添加它们,例如:combined = str(x + " " + y)
- 遍历一个范围而不是手动创建的(连续 + 数字)年份列表:
range(2001,2008+1)
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。