簡體   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