Ich versuche, diesen Fehler zu beheben, ich verstehe es nicht wirklich, da ich ein schlecht ausgebildeter Netzwerk-Ingenieur bin.
Ich lese Linien von Show-Befehle auf einem Router in einer Liste - das ist alles in Ordnung.
Aus dieser Liste möchte ich bestimmte Werte auslesen, was ich mit einer for-Schleife mache.
Ich bekomme am Ende das Ergebnis, das ich brauche, aber auch einen Fehler.
Ich möchte nur bestimmte Werte aus der Liste, die die „3.“ nur die IP-Adresse ist, keine Portnummer usw. (dh ‚2.122.62.193‘, '31 .49.158.183')IndexError: Listenindex außerhalb des Bereichs - Python für Schleife
out1 = ['tcp 217.33.162.162:443 172.16.0.1:443 2.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', '']
gnat = []
for x in out1:
y = x
z = y.split(':')[3]
w = z.split()[1]
gnat.append(w)
>>> for x in out1:
... y = x
... z = y.split(':')[3]
... w = z.split()[1]
... gnat.append(w)
...
Traceback (most recent call last):
File "<console>", line 3, in <module>
IndexError: list index out of range
>>> print gnat
['2.122.62.193', '31.49.158.183'
Es ist nicht sein kann der effizienteste Code, aber das ist das richtige Ergebnis.
Nur, dass ich den Fehler nicht verstehe?
Sie können '' '' (die letzte Zeichenfolge in der Liste) nicht trennen –