我需要找到两个变量之间的范围,
def find_range(a,b):
#some process
for i in range(a,b):
#some process
但问题是数字可能是a=4,b=2
,在这种情况下,我需要 2 到 4 之间的范围。
我知道我可以通过使用if
语句来解决这个问题并找到最小数字,但我不想使用if
语句,因为已经有很多的if
陈述。
这可能吗?
您可以使用sorted
和元组解包:
def find_range(a,b):
print range(*sorted((a,b)))
演示:
>>> find_range(4, 2)
[2, 3]
>>> find_range(2, 4)
[2, 3]
关于什么:
for i in range(min([a,b]), max([a,b]))
尝试这个:
def find_range(a,b):
_min = min(a,b)
_max = max(a,b)
for i in range(_min, _max):
print i
尝试这个:
def find_range(a,b):
#some process
for i in range(*(a,b) if a < b else (b,a)):
#some process