我有下面的代码需要检查是否找到任何对象的可见属性。try- except 块中的每个首字母缩略词函数如果找到则返回一个对象引用,每个都有自己的visible属性。如果未找到任何首字母缩略词对象,我的程序将因调用(例如)DR() 而引发 LookUpError。我觉得必须有一种方法来简化这段代码,这样我就不必指定所有这些单独的 try- except 块,但我无法考虑如何有效地做到这一点。
def detect_planning_workflow_page():
workflow = None
try:
if DR().visible:
workflow = "DR"
except LookupError:
pass
try:
if LL().visible:
workflow = "LL"
except LookupError:
pass
try:
if AZ().visible:
workflow = "AZ"
except LookupError:
pass
try:
if SP().visible:
workflow = "SP"
except LookupError:
pass
try:
if MS().visible:
workflow = "Define Region"
except LookupError:
pass
return workflow
Run Code Online (Sandbox Code Playgroud)