Python で Excel シートから日付と時刻を読み込んでいます。日付は浮動小数点数として格納されます。たとえば、3/11/2003 4:03:00
Excel の date: は として python に読み込まれ37756.2180556
ます。Python では、この 10 進数を通常の日付に変換しようとしてxlrd.xldate_as_tuple
いますが、エラーが発生します。
def Rule_2(sheet):
x = 2
y = 0
total_rows = sheet.nrows
total_columns = sheet.ncols
while y != total_columns:
column_name = sheet.cell(0,y).value
if column_name == "birthday":
while x != total_rows:
c_val = sheet.cell(x,y).value
date = xlrd.xldate_as_tuple(c_val, book.datemode)
print "row:", x + 1, date
x += 1
y += 1
このコードは次のエラーを生成します。
Traceback (most recent call last):
File "Data Cleaner.py", line 104, in <module>
Rule_2(sheet)
File "Data Cleaner.py", line 31, in Rule_2
date = xlrd.xldate_as_tuple(c_val, book.datemode)
File "/Library/Python/2.7/site-packages/xlrd/xldate.py", line 61, in xldate_as_tuple
xldays = int(xldate)
ValueError: invalid literal for int() with base 10: ''
これを修正する方法についてのアイデアはありますか、それとも何か間違っていますか?
助けてくれてありがとう!