我有以下代码。我正在尝试使用滴答功能在扭曲的套接字中进行倒计时。它告诉我tick()只需要1个参数(0给定)。我该怎么办?完全参数1(0给出)
谢谢。
expire = 10
class Socket(Protocol):
def tick(self):
global expire
expire -= 1
if expire == 0:
print "Expired"
else:
reactor.callLater(1, self.tick)
def connectionMade(self):
#self.transport.write("""connected""")
self.factory.clients.append(self)
print "Clients are ", self.factory.clients
if len(self.factory.clients) == 1:
reactor.callLater(0, self.tick)
回溯:
Traceback (most recent call last):
File "/Users/Alec/Desktop/server.py", line 163, in <module>
class Socket(Protocol):
File "/Users/Alec/Desktop/server.py", line 171, in Socket
reactor.callLater(1, self.tick)
NameError: name 'self' is not defined
请用完整回溯显示完整的错误信息。 – BrenBarn 2013-03-18 03:29:37
如果将'reactor.callLater(1,tick)'改为'reactor.callLater(1,self.tick)',会发生什么? – mgilson 2013-03-18 03:29:37
@mgilson Traceback(最近调用最后一次): 文件“/Users/Alec/Desktop/server.py”,第163行,在 class Socket(协议): 文件“/ Users/Alec/Desktop/server。 py“,第171行,插座号 reactor.callLater(1,self.tick) NameError:name'self'未定义 –
Alec
2013-03-18 03:31:29