我重构了一个函数,给定一系列隐式定义间隔的端点,检查一个数是否包含在间隔中,然后返回相应的(不相关的,以任何可计算的方式)。 就是现在处理工作的代码是:Python:从间隔映射到值
if p <= 100:
return 0
elif p > 100 and p <= 300:
return 1
elif p > 300 and p <= 500:
return 2
elif p > 500 and p <= 800:
return 3
elif p > 800 and p <= 1000:
return 4
elif p > 1000:
return 5
哪个是IMO相当可怕的,并且缺乏,无论是时间间隔和返回值是硬编码。任何数据结构的使用当然都是可能的。
不考虑p> 1000的情况! – stefanw 2009-07-29 09:46:50
这就是为什么我指定:“你可以尝试一下这个” – kjfletch 2009-07-29 10:00:26
最后一句话是讽刺的,考虑到python哲学最好只有一种明显的方式来做某事。 – sykora 2009-07-29 12:11:27