繁体   English   中英

如何解决我的 IndexError 问题,以便我可以在病房之后连续运行我的脚本?

[英]How can I solve my IndexError issue so I can run my script continuously after wards?

我是 python 新手,我了解了这种新的自动化,旨在检查网络并说当您输入 ip 的人到达时,我在开始时修复了几个错误,但现在我被卡住了。

import sys
import subprocess 
import os
from decouple import config

IP_NETWORK = config('IP_NETWORK')
IP_DEVICE = config('IP_DEVICE')

proc = subprocess.Popen(["ping", IP_NETWORK], stdout=subprocess.PIPE)
while True:
  line = proc.stdout.readline()
  if not line:
    break
  #the real code does filtering here
  connected_ip = line.decode('utf-8').split()[3]

  if connected_ip == IP_DEVICE:
      subprocess.Popen(["say", "New just connected to the network ! "])

我试图看看 split 是如何工作的,但我不明白

错误 :

file.py", line 15, in <module>
connected_ip = line.decode('utf-8').split()[3]
IndexError: list index out of range

也许line.decode('utf-8')的输出少于 4 个部分? 在这种情况下,会抛出out of range错误。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM