while True:
now = datetime.datetime.now()
if now.second == 1:
print "One"
我的节目打印一次约7次。如何只打印一次?
答案 0 :(得分:2)
您的电脑太快了。
它需要当前时间,测试当前秒是否为1然后再次。而且由于速度非常快,它可以在不到一秒的时间内完成,你可以得到更多的输出线。
每次迭代后等待:
while True:
now = datetime.datetime.now()
if now.second == 1:
print "One"
time.sleep(59) # wait 59 seconds after success
time.sleep(1) # wait 1 second after each fail
这个程序大部分时间都会睡觉。如果你想让它做任何有用的事情,它将是一个不同的程序。
答案 1 :(得分:0)
如何存储以前用于打印的值?
previous = None
while True:
now = datetime.datetime.now()
if now.second == 1 and now.second != previous:
print "One"
previous = now.second # store the last value