我正在寻找解决方案,我可以确保针对每个函数测试输入值,并针对所有错误情况返回。
这是我的代码。
def func_a(value):
do something
return
def func_b(value):
do something
return
def func_c(value):
do something
return
def final(value):
A=def_a(value)
B=def_b(value)
C=def_c(value)
if A != foo:
return A
elif B != foo:
return B
elif C != foo:
return C
else:
return'Success'
main()
print final(value)
问题:
我将一个文件作为值传递,其中每一行都应针对某些测试进行测试。现在如果行中存在与def_a()匹配的问题,则会执行def_a(),但由于def final()中的if循环,该行未针对剩余函数(fund_b,fund_c)进行测试。
问题:
有没有办法,我可以制作一个def final()这样的方式,每行测试所有函数,如果该行匹配多个函数,那么两个条件都将被执行?
答案 0 :(得分:0)
将函数结果存储在字典中并根据需要返回:
def final(value):
result = {'A':def_a(value),
'B':def_b(value),
'C':def_c(value)}
if any(item != foo for item in result.values()):
return result
else:
return'Success'