无法捕获Python中的异常

2024-04-20 07:49:40 发布

您现在位置:Python中文网/ 问答频道 /正文

我使用salt,当我运行exec_state('update_salt')(下面的代码)时,它会引发以下异常:

  File "/usr/lib/python2.6/site-packages/salt/client/__init__.py", line 1582, in __init__
    caller = salt.client.Caller()
  File "/usr/lib/python2.6/site-packages/salt/minion.py", line 283, in __init__
    for key, val in data.items():
  File "/usr/lib/python2.6/site-packages/salt/minion.py", line 300, in gen_modules

  File "/usr/lib/python2.6/site-packages/salt/loader.py", line 286, in render
    opts,
salt.exceptions.LoaderError: The renderer yaml_jinja is unavailable, this error is often because the needed software is unavailable

我试着用试抓块来处理它:

try:
   result = exec_state('update_salt')
   if not result:
       return False
except:
   print "got it.."
   result = exec_state('update_salt_light')
   if not result:
       return False

但是它在第一次尝试中仍然失败,并且没有到达异常块(没有打印)。为什么?你知道吗


Tags: inpyinitislibpackagesusrline