このコードのビットに問題があります
#data_list = some data
wb = xlwt.Workbook()
s = wb.add_sheet("Test Sheet")
for c, data in enumerate(data_list):
xf=None
if isinstance(data, datetime.time):
xf = xlwt.easyxf(num_format_str='HH:MM:SS') #works
elif isinstance(data, datetime.date):
xf = xlwt.easyxf(num_format_str='MM/DD/YYYY') #doesn't work
if xf:
sheet.write(r+1,c,data, xf)
else:
sheet.write(r+1,c,data)
出力では、日付はすべて最初は「#####」として表示されます。各列のセルを操作することで、Excelで適切にフォーマットできますが、時間がかかります。num_format_strで少し遊んでみましたが、今のところ運がありません。