运行 python 脚本时出现此错误:
TypeError: cannot concatenate 'str' and 'NoneType' objects
我很确定“str”是指字符串,但我不知道“NoneType”对象是什么。我的脚本在第二行出现问题,我知道第一行有效,因为该行的命令如我所料在我的 asa 中。起初我认为这可能是因为我在 send_command 中使用了变量和用户输入。
“CAPS”中的所有内容都是变量,“小写”中的所有内容都是从“parser.add_option”选项输入的。
我正在使用 pexpect 和 optparse
send_command(child, SNMPGROUPCMD + group + V3PRIVCMD)
send_command(child, SNMPSRVUSRCMD + snmpuser + group + V3AUTHCMD + snmphmac + snmpauth + PRIVCMD + snmpencrypt + snmppriv)
原文由 insecure-IT 发布,翻译遵循 CC BY-SA 4.0 许可协议
NoneType
是None
对象的类型,它是一个表示 没有值 的对象。None
是“不返回任何东西”的函数的返回值。它也是搜索某些东西但可能找到也可能找不到的函数的常见默认返回值;例如,它由re.search
返回,当正则表达式不匹配时,或者dict.get
当键在字典中没有条目时返回。您不能将None
添加到字符串或其他对象。您的变量之一是
None
,而不是字符串。也许你忘记了return
在你的一个函数中,或者用户没有提供命令行选项和optparse
给了你None
-s-6价值。当您尝试将None
添加到字符串时,您会得到该异常:其中之一
group
或SNMPGROUPCMD
或V3PRIVCMD
有None
as 其值