gpt4 book ai didi

python - 查找列表的最大值(Python)

转载 作者:行者123 更新时间:2023-12-01 05:35:20 24 4
gpt4 key购买 nike

这是我的功能:

def listMaxInd(l):
max_val = l[0]
maxIndex = 0
count_assigment = 1
count_comparison = 0
for i in range(1,len(l)):
count_comparison=count_comparison+1
if l[i]>max_val:
max_val=l[i]
maxIndex=l.index(max_val)
count_assigment = count_assigment + 1

return maxIndex,count_assigment,count_comparison

我想通过分配索引来查找列表的最大值,而不是通过分配值。

在我的版本中,我仍然在分配值。如果没有这个,是否可以找到最大值?

最佳答案

如果您需要使用循环并且无法使用 max() 函数,那么您将不得不至少分配指向迄今为止找到的最大值的索引:

max_index = 0
for i, value in enumerate(l):
if value > l[max_index]:
max_index = i

循环完成后,max_index 指向 l 中(第一次出现的)最大值。 enumerate() 是一种更紧凑、更高效的方法,用于在循环中生成索引以及迭代的值。

更有效的方法是使用带有键的 max() 函数:

max_index = max(range(len(l)), key=l.__getitem__)

这将返回列表l中最大值的(第一个)索引;给定一个索引列表 (range(len(l))),它将找到 l.__getitem__() 返回最高值的索引。

关于python - 查找列表的最大值(Python),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19202848/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com