两个未分类数字之间的范围

时间:2013-11-06 06:16:18

标签: python range

我需要找到两个变量之间的范围,

def find_range(a,b):
    #some process
    for i in range(a,b):
        #some process

但问题是数字可能是a=4,b=2,在这种情况下我需要2到4之间的范围。
我知道我可以通过使用if语句解决这个问题并找到最小数字,但我不想使用if语句,因为已经有很多if语句。这可能吗?

4 个答案:

答案 0 :(得分:5)

您可以使用sorted和元组解包:

def find_range(a,b):
    print range(*sorted((a,b)))

<强>演示:

>>> find_range(4, 2)
[2, 3]
>>> find_range(2, 4)
[2, 3]

答案 1 :(得分:1)

怎么样:

for i in range(min([a,b]), max([a,b]))

答案 2 :(得分:1)

试试这个:

def find_range(a,b):
   _min = min(a,b)
   _max = max(a,b)

   for i in range(_min, _max):
       print i

答案 3 :(得分:0)

试试这个:

def find_range(a,b):
    #some process
    for i in range(*(a,b) if a < b else (b,a)):
        #some process