use*_*997 220 python list-comprehension list
我有一个变量长度列表,我试图找到一种方法来测试当前正在评估的列表项是否是列表中包含的最长字符串.我正在使用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()
Run Code Online (Sandbox Code Playgroud)
我是蟒蛇新手,我敢肯定我只是一个大脑放屁.当然有一个简单的列表理解,我忽略了它的简短和优雅?
谢谢!
Pao*_*ino 562
>>> mylist = ['123','123456','1234']
>>> print max(mylist, key=len)
123456
Run Code Online (Sandbox Code Playgroud)
如果最长的字符串超过1个(应该考虑'12'和'01'),该怎么办?
尝试获得最长的元素
max_length,longest_element = max([(len(x),x) for x in ('a','b','aa')])
Run Code Online (Sandbox Code Playgroud)
然后定期进行foreach
for st in mylist:
if len(st)==max_length:...
Run Code Online (Sandbox Code Playgroud)
小智 5
def longestWord(some_list):
count = 0 #You set the count to 0
for i in some_list: # Go through the whole list
if len(i) > count: #Checking for the longest word(string)
count = len(i)
word = i
return ("the longest string is " + word)
Run Code Online (Sandbox Code Playgroud)
或更容易:
max(some_list , key = len)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
157324 次 |
| 最近记录: |