形成一根琴弦以保持通缉
我对此代码有一个问题:
from netmiko import ConnectHandler
from re import search
lsite=[]
try:
NetworkDevice = {
"host" : "ip",
"username" : "username",
"password" : "mdp",
"device_type" : "cisco_ios"
}
connect = ConnectHandler(**NetworkDevice)
connect.enable()
command = "sh cdp nei"
result = connect.send_command(command).strip()
with open(r".\blabla.txt","w") as filout:
filout.write(result)
with open(r"blabla.txt") as temp_f:
datafile = temp_f.readlines()
for line in datafile:
if search("AP", line):
output = (f"{line}")
lsite.append(output.strip())
print(lsite[-1])
except(IndexError):
pass
而且我有此输出:
056_AP_GRANDE_TERRE.AMCMZ.LAN
Gig 0/12 158 T B I AIR-CAP16 Gig 0
054_AP_GRANDE_TERRE.AMCMZ.LAN
Gig 0/11 132 T B I AIR-CAP16 Gig 0
052_AP_GRANDE_TERRE.AMCMZ.LAN
Gig 0/10 174 T B I AIR-CAP16 Gig 0
050_AP_GRANDE_TERRE.AMCMZ.LAN
Gig 0/9 155 T B I AIR-CAP16 Gig 0
我想要此输出(也许必须在2个输出中拆分):
056_AP_GRANDE_TERRE.AMCMZ.LAN
054_AP_GRANDE_TERRE.AMCMZ.LAN
052_AP_GRANDE_TERRE.AMCMZ.LAN
050_AP_GRANDE_TERRE.AMCMZ.LAN
Gig 0/12
Gig 0/11
Gig 0/10
Gig 0/9
我尝试了多种方法,以split()
或strip( )
,但我没有发现任何可行的东西。
print(lsite [-1])
是因为仅打印lsite
向我展示了所有附加列表的行:
['056_AP_GRANDE_TERRE.AMCMZ.LAN']
['056_AP_GRANDE_TERRE.AMCMZ.LAN', 'Gig 0/12 123 T B I AIR-CAP16 Gig 0']
['056_AP_GRANDE_TERRE.AMCMZ.LAN', 'Gig 0/12 123 T B I AIR-CAP16 Gig 0', '054_AP_GRANDE_TERRE.AMCMZ.LAN']
['056_AP_GRANDE_TERRE.AMCMZ.LAN', 'Gig 0/12 123 T B I AIR-CAP16 Gig 0', '054_AP_GRANDE_TERRE.AMCMZ.LAN', 'Gig 0/11 154 T B I AIR-CAP16 Gig 0',
'052_AP_GRANDE_TERRE.AMCMZ.LAN']
['056_AP_GRANDE_TERRE.AMCMZ.LAN', 'Gig 0/12 123 T B I AIR-CAP16 Gig 0', '054_AP_GRANDE_TERRE.AMCMZ.LAN', 'Gig 0/11 154 T B I AIR-CAP16 Gig 0',
'052_AP_GRANDE_TERRE.AMCMZ.LAN', 'Gig 0/10 142 T B I AIR-CAP16 Gig 0']
['056_AP_GRANDE_TERRE.AMCMZ.LAN', 'Gig 0/12 123 T B I AIR-CAP16 Gig 0', '054_AP_GRANDE_TERRE.AMCMZ.LAN', 'Gig 0/11 154 T B I AIR-CAP16 Gig 0',
'052_AP_GRANDE_TERRE.AMCMZ.LAN', 'Gig 0/10 142 T B I AIR-CAP16 Gig 0', '050_AP_GRANDE_TERRE.AMCMZ.LAN']
['056_AP_GRANDE_TERRE.AMCMZ.LAN', 'Gig 0/12 123 T B I AIR-CAP16 Gig 0', '054_AP_GRANDE_TERRE.AMCMZ.LAN', 'Gig 0/11 154 T B I AIR-CAP16 Gig 0',
'052_AP_GRANDE_TERRE.AMCMZ.LAN', 'Gig 0/10 142 T B I AIR-CAP16 Gig 0', '050_AP_GRANDE_TERRE.AMCMZ.LAN', 'Gig 0/9 177 T B I AIR-CAP16 Gig 0']
['056_AP_GRANDE_TERRE.AMCMZ.LAN']
I have an issue with this code:
from netmiko import ConnectHandler
from re import search
lsite=[]
try:
NetworkDevice = {
"host" : "ip",
"username" : "username",
"password" : "mdp",
"device_type" : "cisco_ios"
}
connect = ConnectHandler(**NetworkDevice)
connect.enable()
command = "sh cdp nei"
result = connect.send_command(command).strip()
with open(r".\blabla.txt","w") as filout:
filout.write(result)
with open(r"blabla.txt") as temp_f:
datafile = temp_f.readlines()
for line in datafile:
if search("AP", line):
output = (f"{line}")
lsite.append(output.strip())
print(lsite[-1])
except(IndexError):
pass
And I have this output:
056_AP_GRANDE_TERRE.AMCMZ.LAN
Gig 0/12 158 T B I AIR-CAP16 Gig 0
054_AP_GRANDE_TERRE.AMCMZ.LAN
Gig 0/11 132 T B I AIR-CAP16 Gig 0
052_AP_GRANDE_TERRE.AMCMZ.LAN
Gig 0/10 174 T B I AIR-CAP16 Gig 0
050_AP_GRANDE_TERRE.AMCMZ.LAN
Gig 0/9 155 T B I AIR-CAP16 Gig 0
I would like this output (maybe have to split in 2 outputs):
056_AP_GRANDE_TERRE.AMCMZ.LAN
054_AP_GRANDE_TERRE.AMCMZ.LAN
052_AP_GRANDE_TERRE.AMCMZ.LAN
050_AP_GRANDE_TERRE.AMCMZ.LAN
Gig 0/12
Gig 0/11
Gig 0/10
Gig 0/9
I tried many ways with split()
or strip()
but I found nothing which works.
The print(lsite[-1])
is because only printing lsite
shows me every lines who append my list like:
['056_AP_GRANDE_TERRE.AMCMZ.LAN']
['056_AP_GRANDE_TERRE.AMCMZ.LAN', 'Gig 0/12 123 T B I AIR-CAP16 Gig 0']
['056_AP_GRANDE_TERRE.AMCMZ.LAN', 'Gig 0/12 123 T B I AIR-CAP16 Gig 0', '054_AP_GRANDE_TERRE.AMCMZ.LAN']
['056_AP_GRANDE_TERRE.AMCMZ.LAN', 'Gig 0/12 123 T B I AIR-CAP16 Gig 0', '054_AP_GRANDE_TERRE.AMCMZ.LAN', 'Gig 0/11 154 T B I AIR-CAP16 Gig 0',
'052_AP_GRANDE_TERRE.AMCMZ.LAN']
['056_AP_GRANDE_TERRE.AMCMZ.LAN', 'Gig 0/12 123 T B I AIR-CAP16 Gig 0', '054_AP_GRANDE_TERRE.AMCMZ.LAN', 'Gig 0/11 154 T B I AIR-CAP16 Gig 0',
'052_AP_GRANDE_TERRE.AMCMZ.LAN', 'Gig 0/10 142 T B I AIR-CAP16 Gig 0']
['056_AP_GRANDE_TERRE.AMCMZ.LAN', 'Gig 0/12 123 T B I AIR-CAP16 Gig 0', '054_AP_GRANDE_TERRE.AMCMZ.LAN', 'Gig 0/11 154 T B I AIR-CAP16 Gig 0',
'052_AP_GRANDE_TERRE.AMCMZ.LAN', 'Gig 0/10 142 T B I AIR-CAP16 Gig 0', '050_AP_GRANDE_TERRE.AMCMZ.LAN']
['056_AP_GRANDE_TERRE.AMCMZ.LAN', 'Gig 0/12 123 T B I AIR-CAP16 Gig 0', '054_AP_GRANDE_TERRE.AMCMZ.LAN', 'Gig 0/11 154 T B I AIR-CAP16 Gig 0',
'052_AP_GRANDE_TERRE.AMCMZ.LAN', 'Gig 0/10 142 T B I AIR-CAP16 Gig 0', '050_AP_GRANDE_TERRE.AMCMZ.LAN', 'Gig 0/9 177 T B I AIR-CAP16 Gig 0']
['056_AP_GRANDE_TERRE.AMCMZ.LAN']
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
我希望这就是您所需要的。
输出:
I hoper this is what you need.
Output: