我想用reactor.callLater调用一个函数,方法是用关键字传递所有变量,用索引传递所有变量。
reactor.callLater(0, some_function, kw={'foo':'bar'})
这会产生错误,因为不期望kw
...
File "C:\App\Python27\lib\site-packages\twisted\internet\base.py", line 800, in runUntilCurrent
call.func(*call.args, **call.kw)
exceptions.TypeError: function_result() got an unexpected keyword argument 'kw'
这些是文档: http://twistedmatrix.com/documents/8.1.0/api/twisted.internet.interfaces.IReactorTime.html#callLater
我该怎么办?
答案 0 :(得分:5)
reactor.callLater(0, some_function, foo="bar")
当函数签名说**kw
时,它们意味着将它们作为键值参数(命名)传递。你在这里传递的内容应该是你直接调用函数时要传递的内容。