所以我有这个脚本,一个python脚本(称之为AAA.py),它在另一个python脚本中调用一个方法(称之为BBB.py)。 现在BBB.py中的这个方法抛出并处理一个KeyError异常,但是当我运行AAA.py时,它会将异常提升到我的控制台,好像它没有被处理......我不明白为什么。 有人可以向我解释一下吗?
是的我已经阅读了有关python中异常的文档。
这是Try / Except:
try:
if network['network'] == vlans_dict[network['netName']]['netaddr']:
self.test_pass('Network address matches VLAN Router: ' + str(network['network']))
else:
self.test_fail('Network address does not match VLAN Router: ' + network['netName'],
'Expected: ' + str(vlans_dict[network['netName']]['netaddr']),
'Actual: ' + str(network['network']))
except KeyError:
self.test_fail("No subnet obtained for " + network['netName'] + " from VLAN info")
老实说,添加剩下的代码是荒谬的......
所以只是为此添加一点......如果我直接在它上面运行第二个脚本,它会按照预期正常处理异常。
此致 Ĵ
答案 0 :(得分:0)
对....简短的回答:我是一个绝对的A级**白痴...
更长的回答:我正在修改BBB.py的副本,这个不是 AAA.py从类路径获取的BBB.py ...所以代码很好,我只是实际上没有运行它!