我有一系列IP会不时更改,我希望每个新的IP都能运行命令。
我的代码是:
while (network.status!="connected"):
p=network.connections
for i in p:
print i.ip #checks the IP's in the array i
time.sleep(10)
所以我希望每当数组i中有一个新值来运行特定命令时。 在python中执行此操作的最有效方法是什么。
答案 0 :(得分:5)
使用set
并查看每个循环中的差异:
old = set()
while network.status != "connected":
p = set(network.connections)
for i in p - old:
print i.ip # new ips that were added
for i in old - p:
print i.ip # old ips that were removed
old = p
time.sleep(10)
答案 1 :(得分:0)
如何对列表进行子类化并将其连接到某个处理程序? 看看这里: https://stackoverflow.com/a/12203829/1091116 您要做的是重命名'validate'并使其对添加列表中的项目作出反应。