最近我对以下问题感到矛盾。它可能只是一种风格选择,但我想知道以下是否存在程序化差异...(在python中,但适用于大多数语言)
案例#1:
arg = A if condition else B
result = func(arg)
案例#2:
if condition:
result = func(A)
else:
result = func(B)
是否有选择这两者的行业标准?是否存在程序化差异?
答案 0 :(得分:0)
我的观点是在第1种情况下,您最好确定是否要检查某种二元条件,例如:整数是奇数或偶数。在这种情况下,为了简单起见,我更喜欢Case#1。
如果条件中的表达式不是二进制,例如检查整数模块n的余数,则n> 2,你需要使用嵌套的三元表达式,代码很难快速读取。在这些案例中,案例#2会更好。