如何更新时间戳?

时间:2018-03-28 23:58:39

标签: python-3.x datetime

我正在尝试为discord bot设置一个日志文件。我使用Python作为机器人,我遇到的问题与时间模块有关。

我的代码:

import time

currentTime = time.strftime("%Y-%m-%d %H:%M:%S", time.localtime())

在不和谐中发布命令后,它会运行:

print(str(currentTime) + " - Emoji's requested!")

在第一次运行时,所有内容都会以正确的日期和时间打印到控制台。但是,下次打印的日期和时间与以前相同,即使下一篇文章是两天后也是如此。

2 个答案:

答案 0 :(得分:1)

您只调用一次time.localtime()。 每次想要拥有当前时间时都需要调用它。如果你不再打电话,它只会使用旧时间。

所以请致电

currentTime = time.strftime("%Y-%m-%d %H:%M:%S", time.localtime())

每次尝试打印时间之前。

你可以制作一个简单的方法,让它每次都缩短:

def get_time() -> str:
    return time.strftime("%Y-%m-%d %H:%M:%S", time.localtime())

然后打印如下消息:print(get_time() + " - Emoji's requested!")

答案 1 :(得分:1)

我的意思是......你存储了来自time.localtime()的号码的价值。在您调用该方法时,该值为静态。您可以使用函数替换它,如下所示:

def currentTime():
  return time.strftime("%Y-%m-%d %H:%M:%S", time.localtime())

然后将您的打印行更改为:

print(str(currentTime()) + " - Emoji's requested!")