如何循环浏览数据并一个接一个地打印到同一列?

时间:2015-02-25 15:16:55

标签: python excel xlsxwriter

这是我的第一篇帖子,如果不正确就很抱歉。

import xlsxwriter
workbook = xlsxwriter.Workbook('demo.xlsx')
worksheet = workbook.add_worksheet()
worksheet.set_column('A:A', 20)
bold = workbook.add_format({'bold': True})
worksheet.write('A1', 'Subjects')

for msg in mbox:
    try:
        print (msg['subject'])
    except:
        print("error")

workbook.close()

目前我在A1中有一个主题标题。如何在A2,A3,A4等标题下打印消息[' subject']。

我想我已经回答了我自己的问题。这就是我所做的并且有效:

i = 2
for msg in mbox:
      try:
           worksheet.write('A{}'.format(i), msg['subject']
           i = i+1

1 个答案:

答案 0 :(得分:0)

您需要使用enumerate()为邮件编制索引:

for row, msg in enumerate(mbox, start=1):
    worksheet.write(row, 0, msg['subject'])

请注意,我们需要从1开始枚举,因为在xlsxwriter中,行和列索引从0开始,我们想从第二行(A2)开始写入。