首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用Netmiko创建函数

使用Netmiko创建函数
EN

Stack Overflow用户
提问于 2021-06-24 16:12:46
回答 1查看 61关注 0票数 0

我有一个使用netmiko的函数脚本,我想为send_command创建一个函数,但我真的不知道怎么做。

代码语言:javascript
复制
def estb_conn(ip,uname,pname,instruct):
cisco_ios = {
    'device_type': 'cisco_ios',
    'ip': ip,
    'username': uname,
    'password': pname,
}

ios_connect = netmiko.ConnectHandler(**cisco_ios)
display = ios_connect.find_prompt()

*我希望将此send_command作为新函数,以便在需要多个命令或for循环时可以在任何地方自由调用它*

代码语言:javascript
复制
command = ios_connect.send_command(instruct)
time.sleep(1)
EN

回答 1

Stack Overflow用户

发布于 2021-07-12 19:05:12

可以,您可以在Python中创建新函数。你甚至可以做你想做的(这被称为部分应用和闭包)。

代码语言:javascript
复制
def netmiko_partial_from_stackoverflow (ip, uname, pname):
    cisco_ios = {
        'device_type': 'cisco_ios',
        'ip': ip,
        'username': uname,
        'password': pname,
    }

    ios_connect = netmiko.ConnectHandler(**cisco_ios)
    display = ios_connect.find_prompt()

    def inner_function_from_stackoverflow(instruct):
        res = ios_connect.send_command(instruct)
        time.sleep(1)
        return res

然后你就可以像这样使用它了:

代码语言:javascript
复制
mycommand_from_stackoverflow = netmiko_partial_from_stackoverflow(someip, someuname, somepnmae)
mycommand_from_stackoverflow('show running-config')
mycommand_from_stackoverflow('show inferfaces')
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/68111959

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档