當我偶然發現以下問題時,我試圖將多張Excel工作簿讀入SPSS:當我用xlrd將Excel中的日期變量讀入Python時,它似乎在日期中添加了2天。或者,也許我從Excel格式轉換爲更人性化的表示方式是不正確的。有人能告訴我下面的代碼有什麼問題嗎?xlrd是否從Excel正確檢索日期變量?
import xlwt,datetime
wb=xlwt.Workbook()
ws=wb.add_sheet("date_1")
fmt = xlwt.easyxf(num_format_str='M/D/YY')
ws.write(0,0,datetime.datetime.now(),fmt)
wb.save(r"d:\temp\datetest.xls")
#Now open Excel file manually -> date is correct
import xlrd
wb=xlrd.open_workbook(r"d:\temp\datetest.xls")
ws=wb.sheets()[0]
Data = ws.row_values(0)[0]
print datetime.datetime(1900,1,1,0,0,0)+datetime.timedelta(days=Data)
#Now date is 2 days off