def get_config(ip_list): for ipaddr,os,name,pswd in ip_list: if os == 'huawei': session = ConnectHandler(device_type=os, ip=ipaddr, username=name, password=pswd, banner_timeout=300) print("connecting to "+ ipaddr + os + name + pswd) print ("---- Getting configuration from {}-----------".format(ipaddr)) config_data = session.send_command('dis ip int brief ') print (config_data) session.disconnect() else os == 'cisco_ios': session = ConnectHandler(device_type=os, ip=ipaddr, username=name, password=pswd, banner_timeout=300) print("connecting to "+ ipaddr + os + name + pswd) print ("---- Getting configuration from {}-----------".format(ipaddr)) config = session.send_command("show running-config") #抓取配置引入config print(config) #回显内容,类似登录设备show run session.disconnect() 请问如何纠正else语句
时间: 2023-12-10 09:38:03 浏览: 143
在这段代码中,else语句的语法不正确。应该是使用elif关键字来创建一个新的条件语句。修改后的代码如下:
```
def get_config(ip_list):
for ipaddr, os, name, pswd in ip_list:
if os == 'huawei':
session = ConnectHandler(device_type=os,
ip=ipaddr,
username=name,
password=pswd,
banner_timeout=300)
print("connecting to " + ipaddr + os + name + pswd)
print("---- Getting configuration from {}-----------".format(ipaddr))
config_data = session.send_command('dis ip int brief ')
print(config_data)
session.disconnect()
elif os == 'cisco_ios': # 使用elif关键字创建一个新的条件语句
session = ConnectHandler(device_type=os,
ip=ipaddr,
username=name,
password=pswd,
banner_timeout=300)
print("connecting to " + ipaddr + os + name + pswd)
print("---- Getting configuration from {}-----------".format(ipaddr))
config = session.send_command("show running-config")
print(config)
session.disconnect()
```
注意,elif语句只有在上一个条件不满足时才会执行。
阅读全文