2

Twisted.internet モジュールがどのように機能するかをテストする簡単なコードがあります。特定の条件が発生したとき (例: i が 5 に等しいとき) にループを停止しようとしていますが、実行できませんでした。主なエラーが 2 つあります。

1.

exceptions.UnboundLocalError: local variable 'i' referenced before assignment

2. If ステートメントを使用せずに最後にreactor.stop()を 追加しただけでは、ループが停止しません。なぜですか?

from twisted.internet import task
from twisted.internet import reactor

time = 1.0 # one seconds
i=0
def myfunction():
    print "sth"
    i +=1
    pass

l = task.LoopingCall(myfunction)
l.start(timeout) # call every second
reactor.run()
if i==5:
    reactor.stop()
4

1 に答える 1