繁体   English   中英

Python:在列表中查找最大元素索引

[英]Python: Find maximum element index in a list

我有一个清单

arr = [0, 1, 45, 2, 40, 3, 70, 4, 45, 5, 6, 7, 8, 9]

我正在尝试使用以下代码从 3 个连续元素中找到最大元素的位置/索引:

for i in range (0, len(arr)-3):
    print(arr.index(max(arr[i : i+3])))

i转到 position 7 时,它给出的结果不正确。

结果应该是:

2 2 2 4 6 6 6 8 8 11 12

而是相反

2 2 2 4 6 6 6 2 2 11 12

那是因为有两个45index返回第一次出现。 您可以传递一个startend参数来告诉index方法从哪个索引开始查找。

for i in range (0, len(arr)-3):
    print(arr.index(max(arr[i : i+3]), i, i+3))

或者:

for i in range (0, len(arr)-3):
    sliced_array = arr[i : i+3]
    print(i + sliced_array.index(max(sliced_array)))

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM