python-2.7 - 将时间插入 xlsxwriter 时出现 TypeError

标签 python-2.7 mysql-python xlsxwriter

我正在从 MySQLdb 导入两点数据。第二点是 cursor.fetchall() 作为时间增量返回的时间。我没有运气尝试将该信息插入 xlsxwriter,总是收到“类型错误:未知或不受支持的日期时间类型”错误。

好的...第 2 轮

现在我正在尝试将 timedelta 转换为 datetime.datetime 对象:

for x in tempList:
    timeString = str(x[1])
    ctTime.append(datetime.datetime.strptime(timeString,"%H:%M:%S))

现在在 xlsxwriter 中,我设置格式:

ctChart.set_x_axis({'name': 'Time', 'name_font': {'size': 14, 'bold': True}, 'num_font': {'italic': True},'date_axis': True})

然后我创建一个时间格式:

timeFormat = workbook.add_format({'num_format': 'hh:mm:ss'})

然后我尝试插入数据:

ctWorksheet.write_datetime('A1',ctTime,timeFormat)  

但无论我做什么,无论我如何格式化数据,我总是会收到以下错误:

TypeError: Unknown or unsupported datetime type

我是否遗漏了一些非常明显的东西?

******* 编辑 1 ******* jmcnamara - 为了回应您的评论,这里有更多详细信息:

我尝试使用时间增量列表,例如 datetime.timedelta(0, 27453),使用以下代码打印时为 7:37:33:

timeFormat = workbook.add_format({'num_format': 'hh:mm:ss'})
ctWorksheet.write_datetime('A1',ctTime,timeFormat)

我仍然收到错误:TypeError: Unknown or unsupported datetime type

即使遍历列表并尝试插入结果也会失败:

timeFormat = workbook.add_format({'num_format': 'hh:mm:ss'})
i = 0
for t in ctTime:
    ctWorksheet.write_datetime(i,0,t,timeFormat)
i += 1

最佳答案

我终于让它与我最近的代码一起工作了。图表仍然无法使用插入的时间正确绘制图形,但至少它们插入正确。

由于我是从 SQL 中提取时间增量,所以我必须先更改它们的格式。来自 SQL 的原始时间增量无法正常工作:

for x in templist:
    timeString = datetime.datetime.strptime(str(x[1]),"%H:%M:%S")
    ctTime.append(timeString)

有了这些 datetime.strptime 格式的时间,我就能够成功地插入到工作表中。

timeFormat = workbook.add_format({'num_format': 'hh:mm:ss'})
i = 0
for t in ctTime:
    ctWorksheet.write_datetime(i,0,t,timeFormat)
i += 1

关于python-2.7 - 将时间插入 xlsxwriter 时出现 TypeError,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25209853/

相关文章:

python - 修改for循环中的增量值

python - 返回非零退出状态 3 python2.7 子进程 check_output

python - 在MySQL-Python中使用INSERT INTO语句的语法错误

python - 属性错误 : (Class) object has no attribute '__name__' Creating ModelForms [Django & Python2. 7]

python - win32file.ReadDirectoryChangesW找不到所有移动的文件

python-2.7 - Python 中的 MySQL;在第一个循环后连接在 for 循环中关闭

python - 无法在 mac os x mojave 上安装 mysqlclient

python - 模拟 xlsxwriter 中的自动调整列

python - 使用 XlsxWriter 分配 Excel 图表对象名称

python - 使用 xlsxwriter 将数据框导出到 Excel 文件