因此,我在大学里接到了一项任务,我要检查列表是否确实已排序(升序或降序)。但我必须使用“for”。 (我们最近才学了for和list,一定要练习一下)
这是我到目前为止所拥有的,我能够确认列表是否是降序,但不是降序或升序:
A=[10,9,8,3,1,0]
def order(A):
for i in range(len(A) - 1):
if ((A[i]>A[i+1])) :
return False
return True
最佳答案
这里有一个简单的方法来返回列表是升序、降序还是两者都不是。
def order(A):
if A == sorted(A,reverse=False):
return 'Ascending'
elif A == sorted(A,reverse=True):
return 'Descending'
else:
return 'Neither'
这是带有简单输入的示例输出。
>> a = [2,5,4,7,1]
>> b = [1,3,5,7,9]
>> c = [9,6,3,1,0]
>> print(order(a), order(b), order(c))
out: Neither Ascending Descending
这个函数的好处是我们不必分析单个元素,我们只需使用内置函数来分析整个列表。
关于python - 检查列表是升序还是降序(使用 FOR),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47003168/