python中使用subprocess来使用shell
关于threading的用法
from __future__ import print_function import subprocess import threading def is_reachable(ip): if subprocess.call(["ping", "-c", "2", ip])==0:#只发送两个ECHO_REQUEST包 print("{0} is alive.".format(ip)) else: print("{0} is unalive".format(ip)) if __name__ == "__main__": ips = ["www.baidu.com","192.168.0.1"] threads = [] for ip in ips: thr = threading.Thread(target=is_reachable, args=(ip,))#参数必须为tuple形式 thr.start()#启动 threads.append(thr) for thr in threads: thr.join()
改良 :使用Queue来优化(FIFO)
from __future__ import print_function import subprocess import threading from Queue import Queue from Queue import Empty def call_ping(ip): if subprocess.call(["ping", "-c", "2", ip])==0: print("{0} is reachable".format(ip)) else: print("{0} is unreachable".format(ip)) def is_reachable(q): try: while True: ip = q.get_nowait()#当队列为空,不等待 call_ping(ip) except Empty: pass def main(): q = Queue() args = ["www.baidu.com", "www.sohu.com", "192.168.0.1"] for arg in args: q.put(arg) threads = [] for i in range(10): thr = threading.Thread(target=is_reachable, args=(q,)) thr.start() threads.append(thr) for thr in threads: thr.join() if __name__ == "__main__": main()
以上这篇对python判断ip是否可达的实例详解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持小牛知识库。
本文向大家介绍对python判断是否回文数的实例详解,包括了对python判断是否回文数的实例详解的使用技巧和注意事项,需要的朋友参考一下 设n是一任意自然数。若将n的各位数字反向排列所得自然数n1与n相等,则称n为一回文数。例如,若n=1234321,则称n为一回文数;但若n=1234567,则n不是回文数。 上面的解释就是说回文数和逆序后的结果是相等的。这就是判断一个数值是否是回文数的标准。
本文向大家介绍python判断一个对象是否可迭代的例子,包括了python判断一个对象是否可迭代的例子的使用技巧和注意事项,需要的朋友参考一下 如何判断一个对象是可迭代对象? 方法是通过collections模块的Iterable类型判断: 以上这篇python判断一个对象是否可迭代的例子就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持呐喊教程。
本文向大家介绍C#判断ip地址是否可以ping的通,包括了C#判断ip地址是否可以ping的通的使用技巧和注意事项,需要的朋友参考一下
本文向大家介绍Android中判断网络是否连接实例详解,包括了Android中判断网络是否连接实例详解的使用技巧和注意事项,需要的朋友参考一下 Android中判断网络是否连接实例详解 在android中,如何监测网络的状态呢,这个有的时候也是十分重要的,方法如下: 调用: 感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!
本文向大家介绍对python 判断数字是否小于0的方法详解,包括了对python 判断数字是否小于0的方法详解的使用技巧和注意事项,需要的朋友参考一下 为了精度更准确 可以使用数字的绝对值 < 1.0e-16 或者 < 1.0e-8来对比 abs(Num) < 1.0e-16 以上这篇对python 判断数字是否小于0的方法详解就是小编分享给大家的全部内容了,希望能给大家一个参考,也
本文向大家介绍python判断链表是否有环的实例代码,包括了python判断链表是否有环的实例代码的使用技巧和注意事项,需要的朋友参考一下 先看下实例代码: 知识点思考: 判断一个单链表是否有环, 可以用 set 存放每一个 节点, 这样每次 访问后把节点丢到这个集合里面. 其实 可以遍历这个单链表, 访问过后, 如果这个节点 不在 set 里面, 把这个节点放入到 set 集合里面. 如果这个节