温馨提示×

Python中如何捕获ping命令异常

小樊
83
2024-12-07 13:32:39
栏目: 编程语言
Python开发者专用服务器限时活动,0元免费领,库存有限,领完即止! 点击查看>>

在Python中,你可以使用subprocess模块来执行ping命令并捕获异常

import subprocess

def ping(host):
    try:
        # 在Windows系统中使用以下命令
        # 在Linux和macOS系统中使用以下命令
        command = ["ping", "-c", "1", host]
        subprocess.run(command, check=True)
        print(f"{host} is reachable.")
    except subprocess.CalledProcessError as e:
        print(f"{host} is not reachable. Error: {e}")

if __name__ == "__main__":
    host = input("Enter the host to ping: ")
    ping(host)

在这个示例中,我们定义了一个名为ping的函数,它接受一个主机名作为参数。我们使用subprocess.run()函数来执行ping命令,并通过设置check=True参数来捕获任何非零退出代码的异常。如果ping成功,我们将输出主机名是可达的。如果ping失败,我们将捕获subprocess.CalledProcessError异常并输出相应的错误信息。

亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>

推荐阅读:python命令行交互如何进行异常捕获

0