TypeError和python 3.5的问题

时间:2016-02-29 14:36:50

标签: security python tcp

所以,我正在制作IDS - 我正在检测连接到主机的连接。当我终于运行它时我得到了这个:

MySQLConnection

以下是代码:

Exception in thread Thread-3709:    
Traceback (most recent call last):
File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/threading.py", line 914, in _bootstrap_inner
self.run()
File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/threading.py", line 862, in run
self._target(*self._args, **self._kwargs)
TypeError: Scan() argument after * must be a sequence, not int

如果有人可以帮助我并根除所有错误,我们将不胜感激......

1 个答案:

答案 0 :(得分:0)

您需要将args的{​​{1}}参数值定义为序列;你不在这里:

Thread()

RawPackThread = threading.Thread(target=PrintConnections, args=(listConnection)) 不是元组,因为缺少逗号

(listConnection)

同样适用于RawPackThread = threading.Thread(target=PrintConnections, args=(listConnection,)) 中的Thread()来电:

StartListening

应该是

ttcp = threading.Thread(target=ListenTCP, args = (socketObjTCP))
tudp = threading.Thread(target=ListenUDP, args = (socketObjUDP))

我不会使用列表来在线程之间进行通信;请改用queue module中的线程安全对象。