如何制作日期时间.now函数在放入循环中时更新

2024-04-25 09:40:22 发布

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

我创建了一个for循环,将代码重复100次,问题是datetime导入不会在循环中更新。你知道吗

代码如下:

from datetime import datetime
now = datetime.now()

print("%02d-%02d-%04d") % (now.year, now.month, now.day)
#below is the loop
for i in range(0, 100):
  time.sleep(1)
  print ("%02d:%02d:%02d") % (now.hour, now.minute, now.second)

所有的输出都和我第一次按run时的时、分、秒相同。你知道吗

Output below:

11:59:0711:59:07

11:59:0711:59:07

(持续100次)


Tags: the代码infromimportloopfordatetime
3条回答

你为什么不现在就搬家日期时间.now()在循环中?你知道吗

for i in range(0,100):
    time.sleep(1)
    now = datetime.now()
    print ("%02d:%02d:%02d") % (now.hour, now.minute, now.second)

您必须再次调用now

for i in range(0, 100):
  time.sleep(1)
  now = datetime.now()
  print ("%02d:%02d:%02d") % (now.hour, now.minute, now.second)

now是一个对象,当你使用它时,它不会得到新的时间(这会很糟糕)。你知道吗

您只对now进行了一次采样,您需要在for循环中这样做

from datetime import datetime
now = datetime.now()

print("%02d-%02d-%04d") % (now.year, now.month, now.day)
#below is the loop
for i in range(0, 100):
  time.sleep(1)
  now = datetime.now()
  print ("%02d:%02d:%02d") % (now.hour, now.minute, now.second)

相关问题 更多 >