3
給出一個數組列表,我可以找到第1個要素的最大的元組列表:查找最大的Python
>>> a,b,c,d = (4,"foo"),(9,"bar"),(241,"foobar"), (1,"barfoo")
>>> print max([a,b,c,d])
(241,"foobar")
還要找到第二個的最高如何元件?以及一個字符串的最大值?
給出一個數組列表,我可以找到第1個要素的最大的元組列表:查找最大的Python
>>> a,b,c,d = (4,"foo"),(9,"bar"),(241,"foobar"), (1,"barfoo")
>>> print max([a,b,c,d])
(241,"foobar")
還要找到第二個的最高如何元件?以及一個字符串的最大值?
使用key
參數:
import operator
max([a, b, c, d], key=operator.itemgetter(1))
字符串的max()
基於字符串的字節值; 'a'
高於'A'
,因爲ord('a')
高於ord('A')
。
對於示例輸入,(241,"foobar")
仍然是最大的價值,因爲'f'
>'b'
和'foobar'
較長(多值)超過'foo'
和'b'
>''
(含b
是繼長串的字母foo
字符) 。
更短的是使用lambda作爲可調用
max([a, b, c, d], key=lambda t: t[1])
+1 operator.itemgetter是你的朋友。 – hughdbrown