【发布时间】:2014-09-11 06:32:36
【问题描述】:
我是一名 PHP 程序员,使用 Python (3.4) 只是因为使用 Python 更容易。 我的脚本将一个 .xlsx 文件转换为许多 .csv 文件(每张纸一个 .csv)。
代码如下:
wb = xlrd.open_workbook(filepath)
for i in range(0, wb.nsheets):
sh = wb.sheet_by_index(i)
sheet_name = sh.name
sheet_name = sheet_name.replace(" ", "_");
fp = open(sheet_name+'.csv', 'at', encoding='utf8')
wr = csv.writer(fp, quoting=csv.QUOTE_ALL)
for row_num in range(sh.nrows):
wr.writerow(sh.row_values(row_num))
fp.close()
完整代码在这里:https://github.com/xtrimsky/xlsx_to_csv
这很好用,除了我有一个日期字段,在 excel 中它显示例如:01/01/2009
但最终的 csv 包含一个数字 39814。请问这是什么,我能用它做什么? 2009 年 1 月 2 日是 39815。
这是一个我可以用来查找 unix 时间戳的数字吗?或者这是一个问题,我应该改变我的脚本?如果它只返回字符串“01/01/2009”,我会感觉更安全。
有人可以帮我理解我在处理什么吗?
【问题讨论】:
-
Python 在这里无关紧要;这就是您看到的内部 Excel 日期表示。
标签: python python-3.x timestamp