current_quarter
函数的哪个实现更具python风格,为什么?你知道吗
第一个版本似乎更容易扩展。然而,这是一种你不会扩展的函数,因为四分之一的概念不会改变。你知道吗
在第二个版本中,更容易掌握力学。你知道吗
def current_quarter(input_date):
months_baskets = [(1,2,3), (4,5,6), (7,8,9), (10,11,12)]
quarters = (1,2,3,4)
for idx, basket in enumerate(months_baskets):
if input_date.month in basket:
return quarters[idx]
break
def current_quarter(input_date):
if input_date.month in (1, 2, 3):
return 1
elif input_date.month in (4, 5, 6):
return 2
elif input_date.month in (7, 8, 9):
return 3
elif input_date.month in (10, 11, 12):
return 4
两者都不是;用数学方法计算四分之一要简单得多:
快速演示:
我不确定我是否得到了Martjin的建议,所以我冒昧地提出我的解决方案
相关问题 更多 >
编程相关推荐