Ping ip在一个di里

2024-10-01 19:16:18 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个dict({ip':'10.198.0.12'},{ip':'10.198.0.91'})等等。你知道吗

我必须一个接一个地ping dict中的ip,看看它是否可以ping。 我正在使用pypingpython库,但是我得到一个错误 “dict对象没有属性拆分”

我正在使用行从数据库获取ip=游标.fetchall()方法,并将变量行返回到函数ping\u ip。你知道吗

def ping_ip(values):
  ip_used_list=[]
  ip_free_list=[]
  for ip in values:
   response = pyping.ping(ip)
    if response.ret_code == 0:
     ip_used_list.append(ip)
     print("reachable", ip)
    else:
     ip_free_list.append(ip)
     print("unreachable", ip)
  return ip_free_list

Tags: 对象ip数据库free属性response错误ping
1条回答
网友
1楼 · 发布于 2024-10-01 19:16:18

在你的问题中,你没有“知识产权宣言”。您拥有的是setdictip属性,它拥有一个IP地址。你知道吗

要ping,您只需要位于set内的dictip属性。你知道吗

for ip_dict in values:
    response = pyping.ping(ip_dict['ip'])

或者,如果您只想处理实际的IP号码,而忘记了{'ip': ''}部分,您可以先将它们转换成list。你知道吗

def ping_ip(values):
    values = [x['ip'] for x in values]
    ...

这将为您提供一个IP列表,如['10.198.0.12', '10.198.0.91', ...]以进行迭代。你知道吗

相关问题 更多 >

    热门问题