Python在futu中创建unix时间戳5分钟

2024-03-29 08:31:45 发布

您现在位置:Python中文网/ 问答频道 /正文

我必须在未来5分钟内创建一个“Expires”值,但我必须以UNIX时间戳格式提供它。到目前为止我有这个,但它看起来像一个黑客。

def expires():
    '''return a UNIX style timestamp representing 5 minutes from now'''
    epoch = datetime.datetime(1970, 1, 1)
    seconds_in_a_day = 60 * 60 * 24
    five_minutes = datetime.timedelta(seconds=5*60)
    five_minutes_from_now = datetime.datetime.now() + five_minutes
    since_epoch = five_minutes_from_now - epoch
    return since_epoch.days * seconds_in_a_day + since_epoch.seconds

是否有一个模块或函数为我进行时间戳转换?


Tags: infromdatetimereturn格式时间unixnow
3条回答

刚找到这个,而且更短。

import time
def expires():
    '''return a UNIX style timestamp representing 5 minutes from now'''
    return int(time.time()+300)

另一种方法是使用^{}

future = datetime.datetime.utcnow() + datetime.timedelta(minutes=5)
return calendar.timegm(future.timetuple())

它也比%s标记到strftime(在Windows上不工作)更便于移植。

现在在Python>;=3.3中,您只需调用timestamp() method即可将时间戳作为浮点数获取。

import datetime
current_time = datetime.datetime.now(datetime.timezone.utc)
unix_timestamp = current_time.timestamp() # works if Python >= 3.3

unix_timestamp_plus_5_min = unix_timestamp + (5 * 60)  # 5 min * 60 seconds

相关问题 更多 >