我的代码如下所示:
if(func_cliche_start(line)):
a=func_cliche_start(line)
#... do stuff with 'a' and line here
elif(func_test_start(line)):
a=func_test_start(line)
#... do stuff with a and line here
elif(func_macro_start(line)):
a=func_macro_start(line)
#... do stuff with a and line here
...
每个 func_blah_start 函数要么返回 None 要么返回一个字符串(基于输入行)。我不喜欢对 func_blah_start 的冗余调用,因为它看起来像是一种浪费(func_blah_start 是“纯的”,所以我们可以假设没有副作用)。这种事情有更好的成语吗,或者有更好的方法吗?
也许我错了,(我的 C 生锈了),但我认为你可以在 C 中执行以下操作:
int a;
if(a=myfunc(input)){ /*do something with a and input here*/ }
有python等价物吗?