查找用于其他数组的Python列表的键值
我现在在做一个Python程序,这个程序需要用到三个不同的数组来进行一些计算。每个数组中的值都是通过一个键来关联的,比如说 i[1]
和 a[1]
是相关的,同时 q[1]
也和它们有关系。
我想找出 q
中最大的值(我之前用的是Python的 q.max()
函数),但是我不知道怎么找到这个最大值对应的键。也就是说,如果最大值是 q[67]
并且它的值是 111110029233
,我该怎么得到 [67]
这个键,以便我可以用这个键去查找 i
列表和 a
列表中对应的值。
5 个回答
2
max
函数不会返回最大值的索引,如果你想找到它的位置,就需要通过循环遍历列表,像这样:
q = [1,2,3,4,5,6,5,4,3,2,1]
def find_max(li):
max_item = max(li)
return (li.index(max_item), max_item)
print find_max(q)
然后你可以用返回值中的第一个元素来访问你列表中相关的元素。
另外,如果你只想要索引,可以使用:
q.index(max(q))
具体可以参考 这个 Stack Overflow 的回答
3
试试这个:
import operator
max(enumerate(q),key=operator.itemgetter(1))[0]
3
在编程中,有时候我们会遇到一些问题,特别是在使用某些工具或库的时候。这些问题可能会让我们感到困惑,不知道该怎么解决。比如,有人可能在使用某个特定的功能时,发现它没有按照预期工作,或者出现了错误信息。这种时候,查看其他人的经验和解决方案就显得特别重要。
在社区网站上,比如StackOverflow,很多人会分享他们遇到的问题和解决办法。通过阅读这些内容,我们可以学习到很多实用的技巧和方法,帮助我们更好地理解和使用编程工具。
总之,遇到问题时,不要害怕寻求帮助,看看别人是怎么解决类似问题的,这样可以让我们在编程的路上走得更顺利。
>>> q = [1,2,3,4,5,6,5,4,3,2,1]
>>> q.index(max(q))
5