为什么会运行两次?

时间:2014-04-23 03:51:36

标签: python-2.7 if-statement while-loop background-process system-tray

我制作了一个使用SysTrayIcon

运行的程序

即使它工作正常,每次检查某些东西时,它都会完成两次。我可以通过减少一半的机会来修复它,但这是一个捷径,而不是一个正确的解决方案。

from systray import SysTrayIcon
from random import randint


def shutprogram(SysTrayIcon):
    something = getsomething()
    while True:
        if getsomething() != something :
            something = getsomething()
            if randint(0,100) <= 10:
                print "STOP, HAMMER TIME!"
                stopthis()
            else:
                print "You may pass"

menu = (('Start', icon.next(), shutprogram),)

SysTrayIcon(icon.next(),"Shut Program",menu)

1 个答案:

答案 0 :(得分:0)

哦,我知道了。当我试图获取某些内容时,它必须等待一段时间,因为它有一些延迟,提示返回一个字符串,如等待,获取信息&#39;。