[Tutor] When max() doesn't work as expected
lie.1296 at gmail.com
Fri Dec 4 03:23:35 CET 2009
On 12/4/2009 12:08 PM, Tony Cappellini wrote:
> What are the assumptions when calling max on a list of strings?
> Does the list need to be sorted? In my case, the list is sorted.
max determines whether one is larger than the other with "<" operator.
max on a list of string will determine the last item if the list has
been sorted in lexicographical order (i.e. the item closest to z, in a
list of string with alphanumerics characters only).
If you want the longest string use:
_, longest = max((len(s), s) for s in mylist)
More information about the Tutor