我正在通过xlsxwriter创建一个excelfile,我想创建一个带有日期的列。更具体地说,下个月的日期。但是,我似乎根本找不到在xlsxwriter中创建日期列的方法。那么date列也将是索引。有人有简单的方法吗?
这是我目前拥有的:(出于这个问题的目的,我仅提取了日期处理信息)
from datetime import date
import xlsxwriter
workbook = xlsxwriter.Workbook('date_newexcel.xlsx')
worksheet = workbook.add_worksheet()
bold = workbook.add_format({'bold': True})
worksheet.set_column('A:B', 30)
worksheet.write('A1', 'Formatted date', bold)
date_t = workbook.add_format({'num_format': 'dd/mm/yyyy'})
worksheet.write(0, 0, date(2018, 10, 15), date_t)
workbook.close()
答案 0 :(得分:0)
您的代码对我来说很好,但是您可以尝试使用write_datetime
方法:
worksheet.write_datetime(0, 0, date(2018, 10, 15), date_t)
如果您需要在整列中写上日期,则需要迭代所需的天数(例如30
),并使用datetime.timedelta
在您写的日期加上1天课:
d = date(2018, 10, 15)
for i in range(30):
worksheet.write_datetime(i, 0, d, date_t)
d += timedelta(days=1)