time.sleep 函数同时返回,为什么?

time.sleep function returning same time, why?

我写了下面的代码:


import time
localtime = time.asctime(time.localtime(time.time()))
for i in range(5):
    print(localtime)
    time.sleep(5)

return5 次间隔 5 秒return

但是,我理解它应该 return 每次 5 秒后不同的时间。

无法弄清楚为什么获得相同的时间 5 次。

您只在程序顶部计算一次时间,然后一遍又一遍地打印该值。

其中一个可能有效:

将计算移入循环

import time

for i in range(5):
    localtime = time.asctime(time.localtime(time.time()))
    print(localtime)
    time.sleep(5)

用计算它的函数替换开头存储值的变量

import time
def localtime():
    return time.asctime(time.localtime(time.time()))

for i in range(5):
    print(localtime())
    time.sleep(5)

localtime = time.asctime(time.localtime(time.time()))存储的是你计算的时间,不是计算时间的公式。