首页 > 解决方案 > 在python中查找字符串中最长的单词

问题描述

我很难在 Python 中找到最长的单词

这是我的代码

s = "Mary is a little lamb"
words = s.split()

max_len = 0
max_word = "" 

for word in words:
    if max_len < len(word):
        max_len = len(word)
        max_word = word
        print("longest word: ", max_word, "(", max_len,")", sep ="")

但是,输出显示了两个单词,Mary(4) 和 Little(6)。实际上,当我在 word 中删除 'Mary' 时,输出显示 is(2) 和 Little(6) 我该如何解决这个问题?

标签: python

解决方案


将打印移出 for 循环:

s = "Mary is a little lamb"
words = s.split()

max_len = 0
max_word = None

for word in words:
    if max_len < len(word):
        max_len = len(word)
        max_word = word

print("longest word: %s(%d)" % (max_word, max_len))

输出

longest word: little(6)

推荐阅读