我正在尝试什么似乎是一个简单的操作 - 解析思科路由器输出使用简单的字符串函数(如'拆分')。但是,我不断收到一个错误,指出一个索引超出范围,并没有看到为什么。索引超出范围时分割字符串
以下是我与,简单的“显示IP INT短暂的”输出开始:
Interface IP-Address OK? Method Status Protocol
GigabitEthernet0/0 unassigned YES NVRAM up up
GigabitEthernet0/0.50 10.78.1.205 YES NVRAM up up
GigabitEthernet0/1 10.233.112.17 YES NVRAM up up
GigabitEthernet0/2 10.233.112.41 YES NVRAM up up
GigabitEthernet0/3 10.233.112.50 YES NVRAM up up
Loopback0 10.233.112.130 YES NVRAM up up
Tunnel0 10.233.112.130 YES unset up up
sdf-a-wan-rt-02#exit
,这里是我想对它运行的代码:
links = []
lines = output.split('\n')
for item in lines:
fields = item.split()
interface = fields[0]
ipaddress = fields[1]
linkstate = fields[4]
prtcstate = fields[5]
links.append([interface,ipaddress,linkstate,prtcstate])
print links
这里被错误我得到:
Traceback (most recent call last):
File "C:\Users\dtruman\Documents\PROJECTS\DEVOPS - ITOC CoE\NETWORK AUTOMATION\parse_output.py", line 32, in <module>
ipaddress = fields[1]
IndexError:列表索引超出范围
它看起来像'output',“sdf-a-wan-rt-02#exit”的最后一行,不包含六个空格分隔的单词,因为您似乎期待着。 – user5459381
你看过'田地',看它是否包含你的想法? –
我认为你正在做些什么,user5459381。也许我应该看看通过字段长度解析这种输出,而不是试图在字符上分割? – riddleOFst33l