如何find一个数字是否属于Python中的特定范围?

假设我想检查x属于范围0到0.5。 我该怎么做?

不,你不能这样做。 range()需要整数参数。 如果你想知道x是否在这个范围内,请尝试一下这样的forms:

 print 0.0 <= x <= 0.5 

小心你的上限。 如果使用range()则将其排除( range(0, 5)不包括5!)

 print 'yes' if 0 < x < 0.5 else 'no' 

range()用于生成连续整数的数组

我会使用numpy库,这将允许你做一个数字列表:

 from numpy import array a = array([1, 2, 3, 4, 5, 6,]) a[a < 2] 
 >>> s = 1.1 >>> 0<= s <=0.2 False >>> 0<= s <=1.2 True 

老忠实的人:

 if n >= a and n <= b: 

它看起来不像Perl(笑话)

 if num in range(min, max): """do stuff...""" else: """do other stuff...""" 

要检查是否有一些数字n在两个数字a和b所表示的包含范围内,你也要做

 if a <= n <= b: print "yes" else: print "no" 

使用replace >=<= with ><来检查n是否在由ab表示的独占范围内(即ab本身不是该范围的成员)。

或者,您也可以检查:

 if (b - n) >= a : print "yes" ... 

范围将产生由两个(或三个)参数转换为整数定义的算术级数。 请参阅文档 。 这不是你想要的,我猜。