擅长:python、mysql、java
<p>三个问题</p>
<ol>
<li><code>Networks</code>应该是一个数组,您将它作为一个字符串传入</li>
<li>你从不使用构造函数的参数</li>
<li>如果在<code>ping = PingSweeper('0.0.0.0',pending)</code>处得到“pending is not defined”,这意味着您尚未在该范围内为<code>pending</code>定义变量</li>
</ol>
<p>下面是一个适当结构的小例子。python变量也应该是小写的,比如<code>networks</code></p>
<pre><code>import queue
class PingSweeper():
def __init__(self, networks, pending):
self.networks = networks
self.pending = pending
scan_networks = ['192.168.1.0/28']
ping = PingSweeper(scan_networks, queue.Queue())
for net in ping.networks:
print("Ping:", net)
ping.pending.put('0.0.0.0')
ping.pending.put('127.0.0.0')
while not ping.pending.empty():
print("Scanning:", ping.pending.get())
</code></pre>