创建函数后,我试图再次调用它不起作用

时间:2020-03-17 18:18:41

标签: python function

让我的第一个脚本工作起来并为此感到非常兴奋。对其进行修改以使用功能并遇到问题。对此可以提供帮助,以便我更好地理解。据我了解,我可以定义一个函数,然后可以再次调用它。所以我在“ sh_ap_sum”下面创建了一个函数。 我正在尝试运行该命令,以便将命令的输出转储到文件中。

然后,我再次使用“ sh_ap_sum(cdp)”调用该函数,并尝试在终端窗口中显示文件的输出。我是否完全做错了任何提示,将不胜感激。谢谢。

from netmiko import ConnectHandler
import sys

def sh_ap_sum(ap_sum):

        ipaddr = input('IP:''')
        net_connect =  ConnectHandler(ip = ipaddr,port = 22,username = 'admin',password = 'mypassword',device_type = 'cisco_wlc_ssh')
        net_connect.find_prompt()
        '(Cisco Controller) >'
        output = net_connect.send_command('show ap summary')
        sys.stdout = open('wlccon.txt', 'w')
        net_connect.disconnect()

sh_ap_sum(cdp)

        output = net_connect.send_command('show ap cdp ne all')
        print(output)

1 个答案:

答案 0 :(得分:0)

net_connect在您的函数中定义。在倒数第三行调用sh_ap_sum()后,您将无法访问它。此时,无法重新缩进并尝试重新输入功能范围。另外,您已经在函数结尾处调用了net_connect.disconnect()

您将需要建立另一个连接,或从函数本身返回所需的输出。