【Python】写一个简单的ping工具

这是我在网上找了发现用不了,然后自己修改的,我用的是Mac,所以命令是Linux版的,python是3.8版本

import subprocess  # 引入subprocess,前提是你的python库里有这个,没有的话可以pip3 install subprocess 下载

ip_list = {"10.10.202.34", "10.10.202.35", "10.10.202.36"}   # ip列表,可以自定义,可以自己弄一个c段循环
for ip in ip_list:
    res = subprocess.call(["ping", "-c", "2", ip], stdout=subprocess.PIPE)  # 加stdout=subprocess.PIPE是为了让输出更直观一点
    # ["ping", "-c", "2", ip]这里面的命令可以改成Windows,格式一样的,命令的效果如图二
    if res == 0:
        print(ip, "可达")
    else:
        print(ip, "不可达")

图一
图二

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
好的,下面是一个简单的实现: 首先,我们需要导入 `tkinter` 和 `subprocess` 模块: ```python import tkinter as tk import subprocess ``` 然后,我们创建一个 `Tk` 对象,并对窗口进行一些基本设置: ```python root = tk.Tk() root.title("Ping Tool") root.geometry("400x300") ``` 接下来,我们创建一个标签和一个文本框,用于输入要 ping 的主机: ```python lbl = tk.Label(root, text="Enter Host:") lbl.pack() txt = tk.Entry(root) txt.pack() ``` 然后,我们创建一个按钮和一个文本框,用于显示 ping 的结果: ```python btn = tk.Button(root, text="Ping", command=lambda: ping(txt.get())) btn.pack() result_txt = tk.Text(root, height=10, width=50) result_txt.pack() ``` 最后,我们定义一个 `ping` 函数,用于执行 ping 命令并将结果显示在文本框中: ```python def ping(host): result_txt.delete("1.0", tk.END) result = subprocess.run(["ping", "-c", "4", host], capture_output=True) result_txt.insert(tk.END, result.stdout.decode()) ``` 完整代码如下: ```python import tkinter as tk import subprocess root = tk.Tk() root.title("Ping Tool") root.geometry("400x300") lbl = tk.Label(root, text="Enter Host:") lbl.pack() txt = tk.Entry(root) txt.pack() btn = tk.Button(root, text="Ping", command=lambda: ping(txt.get())) btn.pack() result_txt = tk.Text(root, height=10, width=50) result_txt.pack() def ping(host): result_txt.delete("1.0", tk.END) result = subprocess.run(["ping", "-c", "4", host], capture_output=True) result_txt.insert(tk.END, result.stdout.decode()) root.mainloop() ``` 运行程序后,输入要 ping 的主机并点击按钮即可开始 ping 并显示结果。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

CQOS

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值