我正在尝试找出句子中最长的单词。

3

我正在尝试找到句子中最长的单词,例如

a = "my name is john and i am working in STACKOVERFLOWLIMITED"

为了获取该句子中最大的单词,我尝试了以下操作

c = a.split(' ')

c = ['my', 'name', 'is', 'john', 'and', 'i', 'am', 'working', 'in', 'STACKOVERFLOWLIMITED']

当我尝试打印 max(c) 时

输出 - 'working'

为什么输出结果不是该句子中最长的单词"STACKOVERFLOWLIMITED"呢?


c = a.split(',') --> c = a.split(' ') 应该用空格而不是逗号。 - Rohithsai Sai
2个回答

10

这就是为什么“working”一词被认为是字典序最大的单词,而不是长度最长的单词。 试试这个:

result = max(a.split(), key=len)
print(result)

-1

另一种方法是...

sorted([(x,len(x)) for x in c],key= lambda x: x[1])[-1][0]

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接