Python:循环比较

时间:2018-10-21 07:06:18

标签: python loops for-loop while-loop nested-loops

我有一个看起来像这样的数组 A = [1,2,3,4,5,6,7,8,7,6,5,4,3,2,1,0,1,2,3,4]

编辑: 我尝试使用for循环,但似乎无法正确处理 你们可以看到峰值为8谷为0 我绝望的举动是反复键入是否 如果A [0]

直到不正确(A [7]

我希望每次z捕获到一个值时循环就停止

这只是内部循环,我仍然需要另一个外部循环,以便它可以基于峰值点检测各种谷点。

2 个答案:

答案 0 :(得分:0)

我将遍历列表,不使用第一个和最后一个元素,并将每个元素与其之前的元素和之后的元素进行比较

turn = None # i.e., no turning point
for i in range(1, len(a) - 1):
    if (a[i+1] > a[i] and a[i] < a[i-1]) or (a[i+1] < a[i] and a[i] > a[i-1]):
        turn = i

答案 1 :(得分:0)

只需使用堆库

import heapq as hpq

a = [1, 2 , 3, 4, 5, 6, 7, 8, 7, 6, 5]
turn = hpq.nlargest(a)
相关问题