使用Python转换SQL日期时间

0 投票
2 回答
2732 浏览
提问于 2025-04-17 14:29

我有一个查询,它在SQL中返回一个日期和时间,举个例子:

+---------------------+
| created             |
+---------------------+
| 2008-07-31 21:42:52 |
+---------------------+

在我的Python代码中,我通过调用这个查询来获取数据。以下是我的Python代码:

query_item_created_f = None
                    query_item_created_f = query_item_created.format(parent_id=question_id)
                    self.dbCursor.execute(query_item_created_f)
                    created_date = self.dbCursor.fetchall()
                    print created_date

我得到的数据和时间格式如下:

({'created': datetime.datetime(2008, 7, 31, 21, 42, 52)},)

我该如何把这个格式转换成Unix时间戳呢?

2 个回答

0

试试用 strftime 这个方法:

'datetime.datetime(2008, 7, 31, 21, 42, 52).strftime('%Y-%m-%d %H:%M:%S')

2

datetime.datetime对象上调用.timetuple()方法,然后把这个结果传给time.mktime(),这样就可以生成一个UNIX时间戳:

>>> import datetime
>>> dt = datetime.datetime(2008, 7, 31, 21, 42, 52)
>>> import time
>>> time.mktime(dt.timetuple())
1217533372.0

撰写回答