我想知道你们认为分配变量值的最佳做法。 '懒惰'案例:
signal = -1
if (date.month != nextDate.month):
signal = +1
或完全披露的案例:
if (date.month != nextDate.month):
signal = +1
else:
signal = -1
两种情况的优点/缺点是什么?
答案 0 :(得分:4)
选择完全披露的案例。
signal
是根据某些条件(实际上是一个switch语句)重要的是能够快速识别正在发生的事情,并且完全公开的案例做得最好。请记住,您的代码将读取的次数超过其编写时间,因此可以使代码的未来读者更容易。
答案 1 :(得分:2)
为什么不
signal = -1 if date.month == nextDate.month else 1
简单易读。
答案 2 :(得分:0)
在实践中,我倾向于使用第一个(“懒惰”)案例。它更简洁,而且很清楚它的作用。
我实际上认为功能版本更好(即python的if表达式),我会尝试切换到使用它。