【发布时间】:2017-12-20 13:56:16
【问题描述】:
我想创建大约十几个与网络设备通信的 python 脚本,其中大多数会执行某种 telnet/ssh/snmp 操作,要么获取信息,要么修改它。
在 perl 中,我通常会使用一个可以正常工作的嵌套哈希,尝试将其重新写入 python 中的嵌套字典并且这有效....但我不确定我是否应该使用类。基本上我需要的最重要的数据结构是:
“workunit”,基本上是一个具有许多属性的设备,例如 ipaddress、主机名、log_file_locations、结果等。
"settings" 和 "transport" 字典基本上说的是我们 做 ssh 或 snmp 以及它的设置是什么(用户名/密码, 社区字符串等)
因此,例如,如果我为 10 个设备运行一个脚本,那么我通常会有一个字典字典,其中 ipaddress 作为该字典的键。
我当然也可以创建一个“Workunit”类,并创建一个“Workunit”对象的基本列表,但是我对 python 的了解越多,“pythonic?”就越少。感觉...对这种情况下“正确”方法的任何见解? (我敢肯定,两者都会起作用)。
【问题讨论】:
标签: python class oop dictionary network-programming