我有一个可变长度的列表,我试图找到一种方法来测试当前正在评估的列表项是否是列表中包含的最长字符串。我使用的是Python 2.6.1
例如:
mylist = ['abc','abcdef','abcd']
for each in mylist:
if condition1:
do_something()
elif ___________________: #else if each is the longest string contained in mylist:
do_something_else()
肯定有一个简单的列表理解,简短而优雅,我忽略了?
要获得列表中最小或最大的项,使用内置的min和max函数:
lo = min(L)
hi = max(L)
与sort一样,你可以传入一个"key"参数,用于在比较列表项之前映射它们:
lo = min(L, key=int)
hi = max(L, key=int)
http://effbot.org/zone/python-list.htm
看起来你可以使用max函数,如果你正确地映射字符串,并使用它作为比较。我建议只找到最大值一次,当然,不是针对列表中的每个元素。
要获得列表中最小或最大的项,使用内置的min和max函数:
lo = min(L)
hi = max(L)
与sort一样,你可以传入一个"key"参数,用于在比较列表项之前映射它们:
lo = min(L, key=int)
hi = max(L, key=int)
http://effbot.org/zone/python-list.htm
看起来你可以使用max函数,如果你正确地映射字符串,并使用它作为比较。我建议只找到最大值一次,当然,不是针对列表中的每个元素。