Django - 字符串转日期 - 日期转UNIX时间戳

4 投票
2 回答
6191 浏览
提问于 2025-04-15 13:38

我需要把一个字符串里的日期转换成另一种格式,这个字符串是从网址里输入的,格式是12/09/2008-12:40:49。显然,最后我需要得到一个UNIX时间戳,但在得到这个之前,我需要先把它转换成一个日期对象。

我该怎么做呢?我找不到任何能显示这种格式的日期的资料。谢谢。

2 个回答

2

你可以使用 time.strptime() 这个方法来解析一个日期字符串。这个方法会返回一个 time_struct,你可以把它传给 time.mktime()(当这个字符串表示的是本地时间时)或者 calendar.timegm()(当这个字符串表示的是UTC时间时),这样就能得到自1970年1月1日以来的秒数。

12

你需要使用 strptime 这个方法。如果你使用的是 Python 2.5 或更高版本,这个方法可以直接在 datetime 里找到;如果你用的是更早的版本,就得结合 timedatetime 这两个模块来实现。

Python 2.5 及以上版本:

from datetime import datetime
dt = datetime.strptime(s, "%d/%m/%Y-%H:%M:%S")

低于 2.5 版本:

from datetime import datetime
from time import strptime
dt = datetime(*strptime(s, "%d/%m/%Y-%H:%M:%S")[0:6])

撰写回答