Hello! 欢迎来到小浪资源网!


如何解决 Sqlalchemy 查询数据返回的时间类型不符合预期的问题?


如何解决 Sqlalchemy 查询数据返回的时间类型不符合预期的问题?

python sqlalchemy 查询数据返回时间类型的问题?

在使用 sqlalchemy 查询数据库时,返回的时间类型可能与预期不符。例如,原本的 datetime 类型字段可能显示为 sat, 22 jan 2022 21:20:26 gmt 这样的格式。

解决方法

一种方法是将其手动转换为所需格式:

from datetime import datetime  # ...  result = connection.execute(text("select * from data limit 10")) data = [] for row in result:     row_dict = {key: value.strftime('%y-%m-%d %h:%m:%s') if isinstance(value, datetime) else value for key, value in row.items()}     data.append(row_dict)  return data

如果希望在整个应用程序中都使用相同的时间格式,也可以将其作为配置项进行设置:

import datetime  # 设置全局时间格式 datetime.datetime.strftime = lambda self, fmt: self.strftime(fmt) if isinstance(self, datetime.datetime) else str(self)

相关阅读