1

2 つの変数の間の範囲を見つける必要があります。

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

4 に答える 4

5

sortedタプルアンパックを使用できます:

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

デモ:

>>> find_range(4, 2)
[2, 3]
>>> find_range(2, 4)
[2, 3]
于 2013-11-06T06:19:28.093 に答える
1

どうですか:

for i in range(min([a,b]), max([a,b]))
于 2013-11-06T06:19:49.087 に答える
1

これを試して:

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

   for i in range(_min, _max):
       print i
于 2013-11-06T06:23:14.283 に答える
0

これを試して:

def find_range(a,b):
    #some process
    for i in range(*(a,b) if a < b else (b,a)):
        #some process
于 2013-11-06T06:19:08.507 に答える