索引器:列表索引超出范围-python for循环
我正在尝试修复此错误,但我并不真正理解它,因为我是一名技术较差的网络工程师。索引器:列表索引超出范围-python for循环,python,python-2.7,Python,Python 2.7,我正在尝试修复此错误,但我并不真正理解它,因为我是一名技术较差的网络工程师。 我正在一个列表中读取路由器上的显示命令行-一切正常。 从该列表中,我想解析出某些值,我正在使用for循环进行解析。 最后我得到了我需要的结果,但也有一个错误。 我只需要列表中的某些值,仅为“第三个”IP地址,没有端口号等(即“2.122.62.193”、“31.49.158.183”) out1=['tcp 217.33.162.162:443172.16.0.1:4432.122.62.193:49971 2.122
我正在一个列表中读取路由器上的显示命令行-一切正常。
从该列表中,我想解析出某些值,我正在使用for循环进行解析。
最后我得到了我需要的结果,但也有一个错误。
我只需要列表中的某些值,仅为“第三个”IP地址,没有端口号等(即“2.122.62.193”、“31.49.158.183”)
out1=['tcp 217.33.162.162:443172.16.0.1:4432.122.62.193:49971
2.122.62.193:49971',tcp 217.33.162.162:443 172.16.0.1:443
31.49.158.183:49266 31.49.158.183:49266', '']
蚊虫=[]
对于x输入输出1:
y=x
z=y.split(“:”)[3]
w=z.split()[1]
昆虫附加(w)
>>>对于x输入输出1:
... y=x
... z=y.split(“:”)[3]
... w=z.split()[1]
... 昆虫附加(w)
...
回溯(最近一次呼叫最后一次):
文件“”,第3行,在
索引器:列表索引超出范围
>>>印虫
['2.122.62.193', '31.49.158.183'
它可能不是最有效的代码,但这是正确的结果。只是我不理解错误?查看列表值,您可能会看到您的错误位于
''。拆分(':')[3]
。您在拆分什么
试试这个逻辑
for x in out1:
if x.strip() == '':
continue
ip_port = x.split()[3]
ip = ip_port.split(':')[0]
gnat.append(ip)
你不能拆分
”
(列表中的最后一个字符串),这是我缺少的东西,即“”字符串。现在我看到它了,这是多么明显!
for x in out1:
if x.strip() == '':
continue
ip_port = x.split()[3]
ip = ip_port.split(':')[0]
gnat.append(ip)