-4
我有如下圖所示它有兩個值 (名稱,編號)的列表:獲得最大的價值
lst = [['ABC', 1.4976557902646848], ['LMN', 1.946130694688788], ['QRS', 3.0039607941124085]]
我想獲得的最大數量的在這個名字值名單。在這個例子中它將是'QRS'
我有如下圖所示它有兩個值 (名稱,編號)的列表:獲得最大的價值
lst = [['ABC', 1.4976557902646848], ['LMN', 1.946130694688788], ['QRS', 3.0039607941124085]]
我想獲得的最大數量的在這個名字值名單。在這個例子中它將是'QRS'
使用max
內置函數與key
kwarg。有關更多詳細信息,請參閱docs的max
。
它將返回具有最大數量的子列表,我們從中獲取第一個元素(「名稱」)。
li = [['ABC', 1.4976557902646848], ['LMN', 1.946130694688788], ['QRS', 3.0039607941124085]]
print(max(li, key=lambda x: x[1])[0])
# QRS
可以使用itemgetter
而不是定義拉姆達:
from operator import itemgetter
li = [['ABC', 1.4976557902646848], ['LMN', 1.946130694688788], ['QRS', 3.0039607941124085]]
print(max(li, key=itemgetter(1))[0])
# QRS
不要命名您的列表'list'。它將覆蓋內置類型。 – Li357
http://stackoverflow.com/questions/13039192/max-second-element-in-tuples-python可能會更接近愚蠢。 – TigerhawkT3